Sql server 2005 SSMA升级使表单只读?
我最近通过SSMA升级了一个数据库,以使用SQL Server 2005。如果我打开绑定到表的表单,它将显示表中的数据;但是,我无法编辑表单并保存信息。简单地在文本框中输入什么都不起作用 我注意到Access DB现在有额外的“表”,以“SSMA$[OriginalTableName[”开头,这似乎是到SQL server的链接,我可以查看和编辑这些表。我无法编辑原始表,只能查看它们。我已尝试将这些“绑定”表修改为新的“SSMA$”但是,随后出现了多个错误Sql server 2005 SSMA升级使表单只读?,sql-server-2005,ms-access,sql-server-migration-assi,Sql Server 2005,Ms Access,Sql Server Migration Assi,我最近通过SSMA升级了一个数据库,以使用SQL Server 2005。如果我打开绑定到表的表单,它将显示表中的数据;但是,我无法编辑表单并保存信息。简单地在文本框中输入什么都不起作用 我注意到Access DB现在有额外的“表”,以“SSMA$[OriginalTableName[”开头,这似乎是到SQL server的链接,我可以查看和编辑这些表。我无法编辑原始表,只能查看它们。我已尝试将这些“绑定”表修改为新的“SSMA$”但是,随后出现了多个错误 以前有人经历过这种情况吗?任何想法或见
以前有人经历过这种情况吗?任何想法或见解都会很有帮助。事实上,我相信我刚刚解决了这个问题。如果表没有明确定义的主键,SSMA向导将创建链接表。Access在链接表上没有主键,显然不知道如何更新它并选择打开它“只读”模式下的链接表。我可以通过手动创建链接表来重现问题,然后弹出窗口要求我识别主键。单击“取消”将链接表置于只读模式,但创建主键并使用该列允许我使用该表。这些SSMA$表上的连接字符串是什么?这应该会告诉您是否需要使用这些链接。若要查找,请转到前端的即时窗口(Ctrl-G)并键入:?CurrentDB.TableDefs(“SSMA”)$[OriginalTableName]”。连接并按enter键。或者,只需浏览MSysObjects表,其中包含一列链接表的连接字符串。它们似乎为空;下面是代码:“?CurrentDB.TableDefs(“[SSMA$Contacts$local]”。Connect”会给我一个新的空行,其中没有任何内容。讽刺的是,在标准数据库上运行相同的代码“Contacts”表生成这样的结果:“ODBC;DSN=XYZ-Proof;APP=2007 Microsoft Office system;DATABASE=XYZ\u-Proof\u-DB;Trusted\u-Connection=Yes"我现在猜测空白连接是我的问题,但我不知道如何更改/更新它。我很感激您的帮助。我觉得SSMA重新命名原来的本地表并创建了使用这些原始名称的ODBC链接。是的,我已经能够推断出这么多;我很好奇为什么我不能编辑它们,即使在表视图中。eresting tidbit;如果我通过ODBC重新创建表,我可以查看和编辑它们。我只是想知道SSMA使用的连接字符串是否为只读?除了始终定义PK(如果没有PK,你就没有真正的数据库,只有一桶数据),我总是在所有SQL Server表中包含时间戳字段,因为这有助于访问和管理绑定表单中的刷新。