Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2005 SSMA升级使表单只读?_Sql Server 2005_Ms Access_Sql Server Migration Assi - Fatal编程技术网

Sql server 2005 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升级了一个数据库,以使用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表中包含时间戳字段,因为这有助于访问和管理绑定表单中的刷新。