zoukankan      html  css  js  c++  java
  • SQLServer中跨库复制数据

    SQLServer中把某个表里的记录复制到另一个数据库的表中的操作方法。

    场景

    现有数据库a和数据库b,数据库a里有表table1,数据库b里有表table2。
    现在要把表table1里的记录复制到table2中,不同情况采用不同方法。

    以下是语法及例子

    1. table1和table2表结构相同

    use b
    in sert into table2 sel ect * from a.dbo.table1

    2. table1和table2表结构不相同

    use b
    in sert into table2(c1,c2) se lect c1,c2 from a.dbo.table1

    注意:c1,c2为需要复制的列。
    3. 如果还没有创建表table2,可以直接将table1的表结构和记录都复制到数据库b中

    use b
    se lect * into table2 from a.dbo.table1

    注意:这样做有一个问题,就是有时主外键关系不能复制过去(不知道什么原因),需要在执行完sql语句后自己再设置一下主外键。
    4. 注意table2中是否有自增长字段
    如果有自增长字段,使用以上sql语句时会报错:仅当使用了列列表并且 IDENTITY_INSERT为 ON 时,才能为表’table2’中 的标识列指定显式值。
    注意:可以先修改table2表,去掉自增长标识,复制完记录后再修改回来。或者用2中的sql语句,不复制自增长字段,复制其他字段。

  • 相关阅读:
    [SCOI2009] Windy数
    [P1361] 小M的作物
    Wannafly Camp 2020 Day 2E 阔力梯的树
    2017百越杯反序列化writeup
    大美西安writeup
    Thinkphp的SQL查询方式
    Thinkphp的CURD
    记一次拿webshell踩过的坑(如何用PHP编写一个不包含数字和字母的后门)
    ThinkPHP的输出和模型使用
    ThinkPHP的运行流程-2
  • 原文地址:https://www.cnblogs.com/huhangfei/p/4989129.html
Copyright © 2011-2022 走看看