#名称?在Access 2016表单的每个文本框中,SQL Server链接表

时间:2016-11-15 20:59:49

标签: sql-server ms-access

我有一个访问表单,其中包含一个相当复杂的查询,显示原始测试值以及在访问2007中创建的大型MS Access表单上生成的测试计算。每隔一段时间我的数据输入人员就会抱怨离开时返回到他们的数据库表单,他们看到一个错误的文本“这个表达式输入不正确或它太复杂,无法评估。例如,数字表达式可能包含太多复杂的元素......”。出现此错误后,每个文本框都填充“#NAME?”错误代码。

如果有人有这方面的经验,我很好奇。我最近将后端表从另一个MS Access数据库迁移到SQL Server。我的表在SQL Server中有一个主键,也有一个时间戳列。最后,我试图减少生成表单上显示的计算的查询的大小。除了那个不起作用之外,它以前在Access 中工作,所以我看不出如何简单地将表移动到SQL服务器会导致查询的大小现在太多。

感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

一个建议,也可能实际上加速表格。是将您用作表单的绑定数据源的查询重写为SQL Server上的视图。

然后将此视图链接到MS Access前端并将其用作绑定对象。

根据您的要求,读/写以及SQL经验,这可能是一件容易的事情,也可能是一件中等难度的事情。

通过网络连接访问非常贪婪,因此任何可以移动服务器端的处理都非常棒。

答案 1 :(得分:0)

这是一个迟到的回复,但我最近遇到了类似的问题,发现它与数据类型有关。

检查SQL Server表的主键数据类型是否为“bigint”。如果是这样可能会导致在Access中读取数据时出现问题。 Access 2016支持大量类型,但需要在选项 - >当前数据库 - >数据类型支持选项中进行设置。请注意,设置大量支持会阻止您的Access应用在2016年之前的版本中运行。