Cur*_*ite 0 sql-server timestamp linq-to-sql composite-primary-key
当使用带有时间戳的linq-to-sql作为复合主键的一部分时,我收到此错误:
"服务器无法生成'Timestamp'类型的主键列."
我猜这可能是因为时间戳只是一个行版本因此也许它必须在插入后创建?要么...
不要使用时间戳数据类型!!
不推荐使用时间戳语法.将在Microsoft SQL Server的未来版本中删除此功能.避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序.
时间戳(Transact-SQL) http://msdn.microsoft.com/en-us/library/ms182776 (SQL.90 ) .aspx rowversion(Transact-SQL)http://msdn.microsoft.com/en-us/库/ ms182776.aspx
此外,如果它主要用于更改,为了跟踪版本,为什么要将它作为主键的一部分?更改主键可能会导致很多问题!
如果您需要系统生成的主键值,请使用标识或guid.
IDENTITY(属性) http://msdn.microsoft.com/en-us/library/aa933196 (
SQL.80 ) .aspx GUID uniqueidentifier http://msdn.microsoft.com/en-us/library/aa260656(v= SQL.80)的.aspx
| 归档时间: |
|
| 查看次数: |
2544 次 |
| 最近记录: |