Chr*_*ris 12 database sql-server sql-server-migration-assi
我经常使用SQL Server迁移助手将数据库导入SQL Server 2005.我注意到导入的一些表已被一个名为SSMA_timestamp的新列修改.
谁能告诉我这是什么以及它将如何使用?
Sim*_*wsi 22
添加的SSMA_timestamp列不仅在迁移期间使用.当Access更新链接到SQL Server的表中的记录时,它们实际上有助于避免错误.因此,如果您仍在使用链接到迁移的SQL Server数据库的Access前端,则最好不要删除SSMA_timestamp列.
从MSDN文章优化链接到SQL Server的Microsoft Office Access应用程序:
支持并发检查
Office Access链接表中可更新性问题的主要原因可能是Office Access无法验证服务器上的数据是否与正在更新的动态集最后检索的数据相匹配.如果Office Access无法执行此验证,则会假定服务器行已被其他用户修改或删除,并且中止更新.
Office Access无法可靠地检查匹配值的几种类型的数据.这些包括大型对象类型,例如text,ntext,image以及SQL Server 2005中引入的varchar(max),nvarchar(max)和varbinary(max)类型.此外,浮点数字类型,例如real和浮动,受到可能使比较不精确的舍入问题的影响,导致在值没有真正改变时取消更新.Office Access也无法更新包含没有默认值且包含空值的位列的表.
解决这些问题的一种快速简便的方法是在SQL Server上的表中添加时间戳列.时间戳列中的数据与日期或时间完全无关.相反,它是一个二进制值,保证在整个数据库中是唯一的,并且每次将新值分配给表中的任何列时自动增加.此类列的ANSI标准术语是rowversion.SQL Server支持此术语.
Office Access会自动检测表何时包含此类型的列,并在影响该表的所有UPDATE和DELETE语句的WHERE子句中使用它.这比验证所有其他列仍具有上次刷新动态集时所具有的值相同更有效.
Office Access的SQL Server迁移助手会自动将名为SSMA_TimeStamp的列添加到包含可能影响可更新性的数据类型的任何表中.
Aar*_*and 11
我认为这是生成的,以便迁移助手可以在迁移期间检测数据的更改.
除非您继续使用Access作为此特定数据库的前端,否则您已迁移到SQL Server(在这种情况下请参阅Simon的答案),我不认为迁移完成后它们将用于任何内容,因此它应该是一旦确定一切都完成,就可以放弃这些新列.
| 归档时间: |
|
| 查看次数: |
9957 次 |
| 最近记录: |