你是用什么展示的
不同的工具,其展示的形式是不一样的。
sql server 的datetime类型的存储格式
应该是2002-08-29 0:00:00.000格式
2002-08-29 0:00:00是smalldatetime格式

解决方案 »

  1.   

    convert(nvarchar(23), getdate(), 121)
      

  2.   

    convert(nvarchar(23), getdate(), 121)
      

  3.   

    使用 CONVERT:CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
    data_type目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。有关可用的数据类型的更多信息,请参见数据类型。 lengthnchar、nvarchar、char、varchar、binary 或 varbinary 数据类型的可选参数。 style日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型)。SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy)。
      

  4.   

    SQL Server中默认2002-08-29就是2002-08-29 0:00:00,所以不现实后面的是分秒了,如果你一定要显示出来,你可以在你的前端程序里控制,或者向上面几位说的那样,做一个转换。