我的SQLSERVER,表T 中的字段DT 是DateTime 类型。如果表中填入数据 2008/8/8 ,则会自动变成 2008/08/08请问怎么设置,或者怎么填入数据才不至于让他自动改变格式,填入的2008/8/8 就是 2008/8/8 而不是2008/08/08。谢谢 !!!

解决方案 »

  1.   

    用datetime吧,用起来好用,VARCHAR存时间不好
      

  2.   

    输出时采用下面的方法可以得到"2007/8/8"select
         cast(year(dt) as varchar)+'/'
        +cast(month(dt) as varchar)+'/'
        +cast(day(dt) as varchar)
    from T
      

  3.   

    select substring(convert(nvarchar(10),datetime,112),1,4)+'/'+replace(substring(convert(nvarchar(10),datetime,112),5,2),'0','')+'/'+replace(substring(convert(nvarchar(10),datetime,112),7,2),'0','') from table 数据库本身的datetime类型 是2007-08-08 00:00:00的
      

  4.   

     select replace(convert(varchar(10),@dt,111),'/0','/') from T 
      

  5.   

    不需要写任何语句,你看见的只是显示问题,如果你觉得读出来看的不爽自己显示时处理一下,你问出这个问题说明你根本不理解何谓Datetime类型。