Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SQL中的相似数据库之间快速导入数据?_Sql_Sql Server_Database_Import - Fatal编程技术网

如何在SQL中的相似数据库之间快速导入数据?

如何在SQL中的相似数据库之间快速导入数据?,sql,sql-server,database,import,Sql,Sql Server,Database,Import,我使用SQL Server 有两个数据库,old和new一个 数据库关系结构完全相同 区别在于: 一个表中缺少某些列 有些栏目有不同的标题 将添加新列中的某些列 问题是找到将数据从旧数据库导入新数据库的方法。使用SSMS中的导入数据向导来完成以下任务: 它会带你走过台阶。您可以阅读更多信息。使用SSMS中的导入数据向导来完成任务: 它会带你走过台阶。你可以多读。 你可以写一个,但是先考虑埃里克的方法。我只是把它作为一种选择 USE AdventureWorks2008R2; GO SELEC

我使用SQL Server

有两个数据库,
old
new
一个

数据库关系结构完全相同

区别在于:

  • 一个表中缺少某些列
  • 有些栏目有不同的标题
  • 将添加新列中的某些列

  • 问题是找到将数据从旧数据库导入新数据库的方法。

    使用SSMS中的
    导入数据向导来完成以下任务:


    它会带你走过台阶。您可以阅读更多信息。

    使用SSMS中的
    导入数据向导来完成任务:

    它会带你走过台阶。你可以多读。

    你可以写一个,但是先考虑埃里克的方法。我只是把它作为一种选择

    USE AdventureWorks2008R2;
    GO
    SELECT c.FirstName, c.LastName, e.JobTitle, a.AddressLine1, a.City, 
        sp.Name AS [State/Province], a.PostalCode
    INTO dbo.EmployeeAddresses
    FROM Person.Person AS c
        JOIN HumanResources.Employee AS e 
        ON e.BusinessEntityID = c.BusinessEntityID
        JOIN Person.BusinessEntityAddress AS bea
        ON e.BusinessEntityID = bea.BusinessEntityID
        JOIN Person.Address AS a
        ON bea.AddressID = a.AddressID
        JOIN Person.StateProvince as sp 
        ON sp.StateProvinceID = a.StateProvinceID;
    GO
    
    参考:msdn

    使用“AS”语句,您需要写出目的地的列名,以便列匹配。

    您可以编写一个,但首先考虑埃里克的方法。我只是把它作为一种选择

    USE AdventureWorks2008R2;
    GO
    SELECT c.FirstName, c.LastName, e.JobTitle, a.AddressLine1, a.City, 
        sp.Name AS [State/Province], a.PostalCode
    INTO dbo.EmployeeAddresses
    FROM Person.Person AS c
        JOIN HumanResources.Employee AS e 
        ON e.BusinessEntityID = c.BusinessEntityID
        JOIN Person.BusinessEntityAddress AS bea
        ON e.BusinessEntityID = bea.BusinessEntityID
        JOIN Person.Address AS a
        ON bea.AddressID = a.AddressID
        JOIN Person.StateProvince as sp 
        ON sp.StateProvinceID = a.StateProvinceID;
    GO
    
    参考:msdn


    对于“as”语句,您需要编写目标的列名,以便列匹配。

    您是否有SSI方面的经验?您的用例听起来非常适合它。如果您了解一点SSI,您可以在大约10分钟内设置数据传输,如果您以前从未使用过SSI,则可能需要几个小时。看:谢谢你,我还不知道是什么。我会看:)它们是“完全相同的结构”,除了不同的位?我怀疑“准确地”并不是这里最好的选择;可能是“非常相似,包含相同的表名集”。您有SSI方面的经验吗?您的用例听起来非常适合它。如果您了解一点SSI,您可以在大约10分钟内设置数据传输,如果您以前从未使用过SSI,则可能需要几个小时。看:谢谢你,我还不知道是什么。我会看:)它们是“完全相同的结构”,除了不同的位?我怀疑“准确地”并不是这里最好的选择;可能“非常相似,包含相同的表名集”。+1并且您也可以保存工作流以供以后重用。。。您可以使用SSIS编辑保存的包:)由于主键自动递增,导入失败。数据流任务1:无法插入只读列“AuthorsId”。对于要将数据放入的数据库,需要在导入之前运行
    SET IDENTITY\u INSERT ON
    。然后
    设置标识\u在其后面插入OFF
    。反之亦然——我总是搞不清楚,是我做的!)真的谢谢你+1,您也可以保存工作流以供以后重用。。。您可以使用SSIS编辑保存的包:)由于主键自动递增,导入失败。数据流任务1:无法插入只读列“AuthorsId”。对于要将数据放入的数据库,需要在导入之前运行
    SET IDENTITY\u INSERT ON
    。然后
    设置标识\u在其后面插入OFF
    。反之亦然——我总是搞不清楚,是我做的!)真的谢谢你!我了解编写一些查询,但问题是键是自动递增的,粘贴相关表会很困难。我了解编写一些查询,但问题是键是自动递增的,粘贴相关表会很困难