mysql - 这段VB代码突然崩溃了。这是对的吗?

标签 mysql ms-access

我在 Microsoft Access 中的链接表突然开始返回值为 #DELETED 的每个字段。我决定改为导入表,并只安排一个任务定期执行,而不是处理查询在针对旧链接表运行时导致的关键违规(奇怪的是,重新链接表暂时修复了其中一些问题。导入似乎永久修复它。)

但是,代码仍然被破坏。奇怪的是,这个 VB 代码现在返回一个错误。它很短,但如下:

Private Sub Form_Open(Cancel As Integer)

If IsLoaded("consumer_info") Then
 Me.Text0.Value = Forms!Consumer_Info.contract_name
Else
 Me.Text0.Value = Forms!frmAllentownMasterGeneration.cboContract
End If
End Sub

在 SQL 查询中,引用了相同的信息:

WHERE (((billing_days_allentown.Month)=[Forms]![frmBillingAllentownSelection]![cboMonth]) AND ((billing_days_allentown.Year)=[Forms]![frmBillingAllentownSelection]![cboYear]) AND ((billing_days_allentown.contract_name)=[Forms]![frmBillingAllentownSelection]![cboContract]) AND ((location_info.primary_address)="-1"));

有什么明显的事情破坏了我的代码吗?如果有任何帮助,我将不胜感激!

最佳答案

引用字段名称时,您可能需要一个感叹号 (!),而不是一个弹出符号 (.)。如:

 Me.Text0.Value = Forms!Consumer_Info!contract_name

而不是

Me.Text0.Value = Forms!Consumer_Info.contract_name

或者您甚至可能需要将其全部拼写出来,例如:

Me.Text0.Value = Forms!Consumer_Info!contract_name.Value

一个好的经验法则是; 如果你创造了它,那就敲打它。这解释了为什么您的表单和字段名称(用您创建的单词命名,例如“Consumer_Info”)需要在前面加上一个感叹号,而像“text”和“value”这样的单词(这是该语言固有的)前面需要一个流行。

关于mysql - 这段VB代码突然崩溃了。这是对的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27000481/

相关文章:

vba - VBA中添加行的最大长度

mysql - 在 MySQL 数据库中的所有类似表(包含相同架构)上运行 ALTER TABLE

python - 在 For 循环中创建字典时防止覆盖嵌套字典值

php - 停止页面重新加载?

c# - 如何获取数据库表的字段名称?

java - 如何使用jackcess将数据从数组传递到数据库

mysql - 从邮政编码获取第一部分?

mysql - 想要一个解决方案使用单个查询分别查找高于限制和低于限制的计数

.net - 在 MS Access 中使用 .Net 的方法

sql-server-2008 - 获取上次插入记录的 ID - Access DAO、ODBC、SQL Server 2008 身份字段