SQLServer DateTime类型 秒部分总是为0
开发语言 C#,
采用SQL Server 2005 数据库
利用存储过程,在向表中添加数据时,发现 一个smalldatetime 字段的秒部分总是0,试过如下几种办法,情况照旧,不知道什么原因,请教各位。
存储过程:SQL code
ALTER PROCEDURE procInsertNewRecord
(
@Time smalldatetime
)
AS
INSERT INTO DATA (时间)
VALUES (@Time)
RETURN
代码调用sqlCommand.Connection = new System.Data.SqlClient.SqlConnection(ConnectionString);
sqlCommand.CommandText = "procInsertNewRecord";
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.Parameters.Add("@Time", SqlDbType.SmallDateTime).Value = DateTime.Now;
sqlCommand.Connection.Open();
sqlCommand.ExecuteNonQuery();
通过 sqlcmd.exe 执行查询后,显示的结果: 2012-05-08 15:13:00
2012-05-08 15:13:00
2012-05-08 23:14:00
2012-05-08 23:14:00
2012-05-08 23:14:00
(38 行受影响)
1>
红色的秒部分,不应该是0的。。。
------解决方案--------------------
把smalldatetime 改为 datetime
------解决方案--------------------
SQL code
smalldatetime 精确度是分钟,你把类型换乘datetime吧
select CAST(GETDATE() as smalldatetime)
/*
2012-05-08 23:44:00
*/
select GETDATE()
/*
2012-05-08 23:44:05.997
*/
------解决方案--------------------
参考 http://technet.microsoft.com/zh-cn/library/ms182418.aspx
------解决方案--------------------
------解决方案--------------------