1.我用DBGRID显示从sql2000中读取的一列datetime类型的数据,在sql2000中没有年月日,显示出来后加了个1899-12-30,请问这是什么原因?
2.我用sql语句向里面插入一条记录,在插入语句中没加年月日只有时间,结果在sql数据库中显示有年月日+时间,请问这是什么原因.我如何才能只插入时间?
请大虾帮忙解决一下,先谢谢了

解决方案 »

  1.   

    1.我用DBGRID显示从sql2000中读取的一列datetime类型的数据,在sql2000中没有年月日,显示出来后加了个1899-12-30,请问这是什么原因?
    时间的空就是1899-12-30,如果只想显示时间,那就利用displyformat2.我用sql语句向里面插入一条记录,在插入语句中没加年月日只有时间,结果在sql数据库中显示有年月日+时间,请问这是什么原因.我如何才能只插入时间?
    方法一就是利用displyformat设置,方法二,不要设置为字段类型为datatime,用字符串或者其他类型代替。
      

  2.   

    FormatDateTime('yyyy-mm-dd',时间)
    用这个把类型格式下
      

  3.   

    既然是sql server,那么你也可以在查询的时候使用convert把时间转换一下,具体参照sql server的帮助。
      

  4.   

    要是delphi要显示sql里的数据,如果日期字段不为空,可以正常显示,那对于sql里的日期字段为空值时,delphi里要怎么处理,才不会出错呢?