select CONVERT(varchar(10), getDate(),120) --2002-1-1
select convert(char(8),getdate(),112) ----20020101
select convert(char(8),getdate(),108)  ---06:05:05
把你的日期型数据再转换为整型试试:
比如:  
2002-9-13  14:36:48    to  0209131436  
select  right(convert(char(8),getdate(),112),6)+  
left(convert(varchar(10),getdate(),108),2)+  
substring(convert(varchar(10),getdate(),108),4,2)

解决方案 »

  1.   

    或者:
    select  cast(substring(replace(replace(replace(convert(char(30),getdate(),20),'-',''),'  ',''),':',''),3,10)  as  int)
      

  2.   

    insert into test1(test1,test2,test3) 
    values('1111', 22, '2002-12-12')
      

  3.   

    因为每次插入或更新包含 timestamp 列的行时,timestamp 列中的值均会自动更新。
      

  4.   

    谢谢各位的回答,但是我的问题是如何才能把timestamp插入到数据库?insert into test1(test1,test2,test3, test4) 
    values('1111', 22, '2002-12-12', '2002-12-12 12:12:12')就上边这句应该怎么写?insert into test1(test1,test2,test3, test4) 
    values('1111', 22, '2002-12-12', convert(timestamp,'2002-12-12 12:12:12')这个不行) ???
      

  5.   

    Rotaxe(程序员):
    是不是在6.5中不能手工插入timestamp的值?
      

  6.   

    7.0和2000 也不行。
    要想更新可以用 datetime 设default getdate()
      

  7.   

    insert into test1(test1,test2,test3) 
    values('1111', 22, '2002-12-12' )timestamp字段的值不能人为干预。
      

  8.   

    ok,谢谢Rotaxe(程序员)和CrazyFor(冬眠的鼹鼠)两位