MS Access连接到两个Dbs

时间:2017-09-29 15:41:04

标签: mysql sql-server azure ms-access access-vba

我正在开发一个Microsoft Access Project,它连接到两个数据库,一个是在Azure中托管的SQL Server,另一个是托管在Linux服务器上的MySql。

在我的表单中,我试图将数据从MySQL导入Azure服务器。

我已成功连接到数据库并将值插入到我的数据库中

             From  MySql /Linux        ---- INTO ---->         Azure/SQL 

手动插入查询和我的代码。我的表单上的代码实际上是运行一个SQL查询,从MySQL表中选择一个SQL Server数据库。

我有一个主键,它是目标表中唯一的标识符( guid )。所以当然这不能为空。在测试中,我通过SQL插入语句在表中手动插入记录。看到这个工作,所以我继续测试相同的查询由按钮点击事件触发。哪个有效。它将从另一个表中导入记录,并默认创建 guid 。但是,经过进一步的测试,我意识到当我使用空表时,它无法成功导入到另一个表中。 Access将在按钮单击时运行查询,但随后警告我不会传输任何记录。

我的问题是为什么?为了将新记录正确插入空表,我错过了什么?它似乎只适用于具有现有记录的表。

1 个答案:

答案 0 :(得分:0)

可能存在术语问题。使用Access'术语;可以通过两个步骤完成此操作:使用查询设计视图功能

一个。使用要移动的记录表进行选择查询。保存名称 - 我现在将其命名为Q1。

湾进行追加查询;首先选择Q1作为记录源 - 当你将其识别为附加时,它会询问目标表,你将选择它。然后根据需要对齐字段。将其保存为A2查询。

然后您需要做的就是持续发起A2查询。

在Access术语中,有一个选择,追加,更新而不是插入 - 所以尽管更新查询的SQL语法确实是INSERT INTO所有我能想到的可能是你正在调用Update方法,当然这需要那里是一个过度写作的记录。

希望这有帮助。