我正在尝试使用Java
合并ms access
的两个数据库。我正在从一个数据库建立连接,并从其他数据库建立另一个连接。我正在将每个表中的所有记录复制到另一个数据库中的表中。
除了将记录从一个数据库表复制到另一个数据库表之外,还有其他解决方案吗?两个数据库具有相同的表结构。
最佳答案
在大多数情况下,复制关系数据库不仅仅是复制表。例如,您必须考虑复制数据的顺序以避免违反完整性。
关于复制的 SQL,Access 将接受外部 mdb/acdb 的名称作为目标,因此只要没有附件或多值字段数据类型,前两条语句就可以工作。另一个问题是自动编号 ID,如果它们可能重叠,则 INSERT INTO 是不安全的,因为最终可能会出现重复项。
SELECT * INTO AnotherTest IN 'Z:\Docs\test.accdb'
FROM test;
INSERT INTO AnotherTest IN 'Z:\Docs\test.accdb'
SELECT *
FROM test;
虽然上面的 INSERT 通常会起作用,但列出字段并省略任何自动编号字段会更安全。
INSERT INTO AnotherTest ( AText, ADate, ANumber ) IN 'Z:\Docs\test.accdb'
SELECT test.AText, test.ADate, test.ANumber
FROM test;
所有语句均使用 MS Access 查询设计窗口构建,仅稍加修改。
关于java - 使用java合并两个ms access数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14412609/