Sql server SQL Server插入时间戳插入其他内容

Sql server SQL Server插入时间戳插入其他内容,sql-server,timestamp,Sql Server,Timestamp,可能重复: 我试图执行一个插入时间戳的简单查询。查询运行时没有问题,但这是插入到列中的内容,而不是当前时间: 0x00000000000007D2 以下是查询: INSERT INTO auctions (title, description, finish_date) VALUES ('Some title', 'Some description', '05/03/2003 11:15:45') 从我所读到的Timestamp已经被一种叫做Rowversion的东西弃用了,但是我

可能重复:

我试图执行一个插入时间戳的简单查询。查询运行时没有问题,但这是插入到列中的内容,而不是当前时间:

0x00000000000007D2
以下是查询:

 INSERT INTO auctions (title, description, finish_date) 
 VALUES ('Some title', 'Some description', '05/03/2003 11:15:45')
从我所读到的
Timestamp
已经被一种叫做
Rowversion
的东西弃用了,但是我在ManagementStudio中找不到这样的数据类型

拍卖表:

  • auction\u id-bigint
  • title-nvarchar(最大值)
  • 说明-nvarchar(最大值)
  • 开始日期-时间戳
  • finish\u date-datetime

不能使用时间戳类型存储日期

时间戳基本上是在单个数据库中执行的插入和更新操作的计数器,因此它是给定数据库的本地计数器,没有实时值

为了符合insert语句,您应该改用DateTime-既用于
开始日期
,也用于
完成日期


查看此链接:

我想我可以使用时间戳插入当前时间?不。奇怪的是,SQLServer中的时间戳数据类型本身并没有真正的时间概念。只是相对于数据库中执行的特定操作的时间。噢,哇,谢谢,似乎我对MySQL中的时间戳感到困惑-
时间戳
与日期和/或时间无关-它只是一个数字,系统增加的行版本号…这现在有意义了,谢谢:)另一条建议:不要什么都用
nvarchar(max)
。考虑一下你的标题和描述的最长长度——10亿个字符——每个——真的!?!?请参阅-仅当您确实必须存储超过4000个Unicode字符时,才使用
(MAX)
类型。哦,是的,这只是出于测试目的,知道MAX总是很好的。谢谢您的建议:)