SQL Server上的语法错误在更改表上

时间:2016-08-14 04:51:28

标签: sql sql-server

ALTER TABLE [BlaBla] 
  ADD TimeStamp TIMESTAMP NOT NULL 
      DEFAULT CURRENT_TIMESTAMP 
      ON UPDATE CURRENT_TIMESTAMP

我遇到错误

  • ON
  • 附近的语法不正确
  • CURRENT_TIMESTAMP
  • 附近的语法不正确

任何人都可以帮我吗?

2 个答案:

答案 0 :(得分:1)

SQL Server中没有ON UPDATE子句。

如果你真的需要一个时间戳 - 然后在更新时触发,用当前时间映射更新列。

答案 1 :(得分:0)

如果表有记录,则不能直接使用非空列。

你需要第1步

  ALTER TABLE [BlaBla] ADD TimeStamp datetime NULL DEFAULT CURRENT_TIMESTAMP

第2步

update [BlaBla] set [TimeStamp] =CURRENT_TIMESTAMP where [TimeStamp] is null

第3步没有添加不为空

   ALTER TABLE [BlaBla] ADD TimeStamp datetime NOT NULL DEFAULT CURRENT_TIMESTAMP