无法将DateTime.now小时分和秒插入数据库

时间:2014-07-03 23:20:59

标签: c# sql sql-server

我在SQL Server表中有一列Datetime类型。

当我这样做时:

Response.Write(DateTime.Now);

我得到当前日期和确切时间。

但是,当我将其插入我的数据库时,它显示为日期,时间戳始终为:

12:00:00 AM

我需要插入时间和日期,而不仅仅是日期,然后是凌晨12:00:00。

插入代码:

string query = "INSERT INTO tblProject (ProjectStatus,ProjectLastUpdated) VALUES ('" + txtAddress.Text + "', '" + DateTime.Now + "')";

1 个答案:

答案 0 :(得分:2)

我只是向您保证,您的问题源于使用错误的列类型。 SQL中有一些与日期相关的类型,我的猜测是,与DATE相比,您使用的是DATETIME。尝试使用简单的ALTER TABLE tblProject ALTER COLUMN ProjectLastUpdated DATETIME交换列类型,我打赌您的问题将得到解决。

另外,正如一对人提到的,你一定要切换到使用SQL参数。您现在使用系统的当前格式来构建DateTime字符串,几乎始终有效。如果切换到使用SQL参数,它将始终有效。至少,任何编程都可以依赖于"总是。"