INSERT dbo.Employees
( FirstName, SurName, DateOfBirth, DateOfHire,
LastReview, Department )
VALUES
( 'Jack', 'Jones', 
                  cast('Feb 22 1945 10:47AM' as datetime), 
                  cast('Apr 16 1999 10:47AM' as datetime),
                  cast('Mar 15 2002 10:47AM' as datetime), 2 )

解决方案 »

  1.   

    說明書上的DateOfBirth, DateOfHire,LastReview是字符類型,而你的庫里是日期型,插入時要轉換類型
      

  2.   

    E文版的sql server才可以吧。
    中文的:insert into t(a) select '20041212 00:00:00'
      

  3.   

    一般情况下,我们现在使用的SQLServer版本都不能够识别下面的时间格式,应该要写函数转换
    'Feb 22 1945 10:47AM'平时使用时间常量最好这样写:
    INSERT dbo.Employees
    ( FirstName, SurName, DateOfBirth, DateOfHire,
    LastReview, Department )
    VALUES
    ( 'Jack', 'Jones', '1945-2-22 10:47', 
    '1999-4-16 10:47', '2002-3-15 10:47', 2 )或者'2004-02-03 03:05:02', '20041212 00:00:00'
      

  4.   

    INSERT dbo.Employees
    ( FirstName, SurName, DateOfBirth, DateOfHire,
    LastReview, Department )
    VALUES
    ( 'Jack', 'Jones', 'Feb 22 1945 10:47AM', 
    'Apr 16 1999 10:47AM', 'Mar 15 2002 10:47AM', 2 )
    改成这样就可以了.    INSERT dbo.Employees
    ( FirstName, SurName, DateOfBirth, DateOfHire,
    LastReview, Department )
    VALUES
    ( 'Jack', 'Jones', '1945-02-22 10:47AM', 
    '1999-04-16 10:47AM', '2002-03-15 10:47AM', 2 )
    在sql server2000 不能误别您所给出的字符串!!