仅在 Microsoft access 更新时将 Microsoft Access 导出到 Mysql

Posted

技术标签:

【中文标题】仅在 Microsoft access 更新时将 Microsoft Access 导出到 Mysql【英文标题】:Export Microsoft Access to Mysql only on Microsoft access update 【发布时间】:2014-07-09 10:26:36 【问题描述】:

我有一个 Microsoft 访问数据库,我想将它链接到 mysql 数据库。当 Microsoft 数据库更新记录时,我希望它立即将更新推送到 Mysql 数据库。 Mysql 数据库应该能够更新 access 数据库。有没有办法我可以做到?

我对此非常陌生。我尝试使用 ODBC 导出功能,但它不起作用。我也尝试过使用链接表,但我迷路了。

请帮忙???

【问题讨论】:

【参考方案1】:

Access 没有“触发器”,因此您无法确定何时更新了表(尽管 2010 确实包含数据宏,它的作用类似于触发器 - 但这完全是另一回事)。

如果您的所有数据输入都是通过表单完成的(这就是应该完成的方式),那么您可以使用表单的 Before_Update 事件来执行此操作。您提到您的表是链接的,所以基本上您只需编写一个更新或插入查询:

Dim sql As String
If Not Me.NewRecord Then
  sql = "UPDATE MySQLTable1 SET Field1=" & Me.Textbox1 & " AND Field2=" & Me.Textbox2 & " WHERE      MySQLTable.IDField=" & Me.IDField
Else
  sql = "INSERT INTO MySQLTable(Field1, Field2) VALUES(" & Me.Textbox1 & "," & Me.Textbox2 & ")"
End If

Currentdb.Execute sql

如果字段是文本,那么您必须对它们进行分隔:

  sql = "UPDATE MySQLTable1 SET Field1='" & Me.Textbox1 & "' AND Field2='" & Me.Textbox2 & "' WHERE      MySQLTable.IDField=" & Me.IDField

请注意,我在实际数据周围添加了单引号 ( ' )。

关于更新:显然,您必须知道要更新的 MySQL 中特定记录的 ID 值。我不确定您如何存储它以便将您的 Access 记录“关联”到 MySQL 记录,但您必须在某种程度上这样做。

【讨论】:

以上是关于仅在 Microsoft access 更新时将 Microsoft Access 导出到 Mysql的主要内容,如果未能解决你的问题,请参考以下文章

使用 Interop.Access 仅在页眉部分(或正文或页脚)中获取控件

通过 Microsoft Access 访问 Sharepoint 库

Microsoft Access 更新查询

在 Microsoft Access 中使用 Select 进行更新

使用传递查询中的数据更新 Microsoft Access 2013 表

尝试使用Microsoft Access更新DataGridView时出错