将数据从一个数据库中的表复制到另一个数据库中的表-SQL是什么?
我的情况是我有20个Access数据库。每个表都有相同的15个表,但数据不同。20个数据库中的每个表的名称和模式都是相同的 我想创建一个具有相同结构的新数据库,并用所有20个原始数据库的内容填充它,因此我有一个包含15个大表的数据库,而不是包含15个小表的20个数据库 我必须在SQL中完成这一切,因为我正在通过Ruby Acess库进行接口- 有人能帮我解决SQL问题吗?我真正需要的是一个示例,将源数据库中一个表中的所有记录附加到目标数据库中的一个表中将数据从一个数据库中的表复制到另一个数据库中的表-SQL是什么?,sql,copy,Sql,Copy,我的情况是我有20个Access数据库。每个表都有相同的15个表,但数据不同。20个数据库中的每个表的名称和模式都是相同的 我想创建一个具有相同结构的新数据库,并用所有20个原始数据库的内容填充它,因此我有一个包含15个大表的数据库,而不是包含15个小表的20个数据库 我必须在SQL中完成这一切,因为我正在通过Ruby Acess库进行接口- 有人能帮我解决SQL问题吗?我真正需要的是一个示例,将源数据库中一个表中的所有记录附加到目标数据库中的一个表中 哦,让事情变得更复杂一点,每个数据库中的1
哦,让事情变得更复杂一点,每个数据库中的15个表都有一组不同的字段,有些表有很多字段,大约40个。因此,完美的惰性解决方案不需要我在复制行时列出表中的每个字段。这可能吗?如果您有可用的SQL server,则可以使用SQL server集成服务SSI 这样,您就可以使用GUI和向导来传输数据 基本sql将是一条语句。为了缩短时间,我将调用您的20个数据库,如DB1、DB2。。DB20和最终数据库DBFinal 惰性解决方案将要求从主shema获取字段名-最好列出字段,因为您可以自动生成sql语句或使用应用程序或ER图表中的任何字段 逻辑: 1创建DBFinal,禁用主键的自动增量,以便可以插入来自DB1、DB2。。。 2生成一个select,选择每个表的所有行和列。比如:
SELECT key, atrb1, atrb2 FROM table1
3通过使用文本复制粘贴将insert组装到select语句中,类似于:
INSERT into DBFinal.user.table1 (key, atrb1, atrb2) SELECT key, atrb1, atrb2 FROM table1
四,
如果在不同的数据库中为不同的值获取相同的键值,则需要更改所有主外键值,以便在目标数据库中不获取重复的键值。我建议在DBFinal中添加一个值行计数+1。
在DBFinal中插入表1键、atrb1、atrb2
从表1中选择+9001键、atrb1键、atrb2键,Hi Shiraz-我不知道,不幸的是,我需要用sql完成所有操作。感谢Erv-我使用ruby界面完成了这项操作。这有点愚蠢,因为我基本上必须这样做-从源表中获取字段名-从源表中获取行数据-使用上面的方法构建插入字符串我已经完成了避免重复的步骤,在每个数据库的每个表中添加了一个产品id字段,每个数据库都是唯一的,并将其添加到每个表的复合主键中。干杯maxNice很高兴听到你成功了——这可能是一项需要高度集中精力的工作,希望没有其他紧急任务打扰。