首页 > 数据库技术 > 详细

SQL server 通过SQL语句实现表数据的复制(可跨库)

时间:2019-01-16 23:16:28      阅读:174      评论:0      收藏:0      [点我收藏+]

  今天遇到这样的问题,要从一个数据库中复制一张表的数据到另一个数据库的同名表,以往我的做法就是将脚本文件导出来,然后执行一下,但是这次我试了一下,由于数据太多,导出的脚本有五百多兆,ssms根本运行不了。一番搜索找到了以下解决方案:

-- 代码一
INSERT INTO [database1].[dbo].[table1] ([字段1],[字段2]……)
SELECT [字段1],[字段2]……  FROM  [database2].[dbo].[table2]

  两处的字段要一一对应;如果遇到有id自增的情况,有大神给的解决方法是:

-- 代码二
SET IDENTITY_INSERT [table] ON; -- 开启表中标识列
SET IDENTITY_INSERT [table] OFF; -- 关闭表中标志列

  可在将以上代码二两句分别插在代码一前后,再执行;但是我没有实现,可能是姿势有问题,所以我还是用的笨办法,就是执行前先设计表,将id设为不自增,执行完再改成自增。
  其实这种写法也有其他的效果:

-- 同数据库不同表数据复制
INSERT INTO [table1] ([字段1]……)
SELECT ([字段1]……) FROM [table2];

-- 创建新的表同时复制数据
SELECT [字段1]…… INTO new_table FROM old_table;

  记录学习一下,错误的地方欢迎大佬们指正。

SQL server 通过SQL语句实现表数据的复制(可跨库)

原文:https://www.cnblogs.com/99ll/p/10279947.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!