我正在尝试将SQL中的表导入访问,但是我在表错误中获得了太多索引。 SQL中的表被索引到几个表,不幸的是我无权修改或更改表。只需在DB中具有读访问权限。我试图导入/链接表,但由于抛出了太多的索引错误,我无法这样做。
是否可以只导入/链接数据而不是索引?我知道访问限制为32个索引。我也清除了选项中的自动索引,但我仍然收到错误。
是否有关于如何在访问中导入/链接此表的解决方案?
提前致谢
答案 0 :(得分:2)
我做了一些挖掘如何避免这个问题。所以问题是如果表有很多索引我们就不能直接链接到SQL数据库而Access会抛出错误“你试图导入的表上的索引太多”。
打败这种方法的一种方法是将“传递查询”放在一起。很多人建议使用VBA代码。我不是一个程序员,无法让它有效地工作。但是,Access使您能够使用VBA构建它,我找到的解决方案是在Microsoft网站上。
步骤如下:由于与2007年相比的命名惯例不同,您可能需要在2010年解决此问题。
在“创建”标签上,点击“其他”组中的查询设计。 单击“显示表”对话框中的关闭,而不添加任何表或查询。 保存查询。在设计模式下打开查询 在“设计”选项卡上,单击“查询类型”工作组中的传递。 单击“显示/隐藏”工作组中的“属性表”以显示查询的属性表。 在查询属性表中,将鼠标指针放在ODBC Connect Str属性中,然后单击Build(...)按钮。
使用ODBC Connect Str属性,可以指定有关要连接的数据库的信息。您可以键入连接信息,或单击“生成”,然后输入有关要连接的服务器的信息。
当系统提示您将密码保存在连接字符串中时,如果要将密码和登录名存储在连接字符串信息中,请单击是。 如果查询不是返回记录的类型,请将ReturnsRecords属性设置为否。 在“SQL传递查询”窗口中,键入传递查询。例如,以下传递查询使用SELECT语句中的Microsoft SQL Server TOP运算符仅返回示例Northwind数据库中Orders表中的前25个订单: 从订单中选择TOP 25订单
要运行查询,请单击“设计”选项卡上“结果”组中的运行。对于返回记录的SQL传递查询,请单击状态栏上的数据表视图。 如有必要,Microsoft Access会提示您输入有关服务器数据库的信息。
这对我有用。如果某个人遇到同样的问题,您可以使用这些步骤。