我遇到了链接到 SQL Server 表的 Access 表单的问题。我通常在 Form_Load 事件中使用 VBA 设置表单的 RecordSource 属性,如下所示:
Set Me.Recordset = CurrentDb.OpenRecordset("some SQL")
我正在使用 SQL Server 的链接表。
一切工作正常,直到我进入表单的设计视图并进行一些更改(例如,移动文本框)。之后,表单属性中自动生成的 RecordSource 会损坏(不完整)并产生错误。
例如:
Select field1,field2,field3 from Table where field4="test data"
更改为:
Select field1,field2,field3 from Table where field4="te
这样的记录源自然会产生错误,并且非常耗时,因为每次我在表单设计中更改某些内容时都会发生这种情况。
我剩下的唯一选择是手动删除属性窗口中的记录源,并让它再次在 Form_Load 上自动填充。
直接在表单打开事件中设置RecordSource:
Me.RecordSource = "Select field1,field2,field3 from Table where field4='test data'"