Sql 是否将数据从一个DB表复制到另一个DB表?
我想从DB ANIMAL1复制Table DOG,并将数据复制/创建到DB ANIMAL2中的Table DOG 该表还需要复制所有行(主键)ID 我该怎么办Sql 是否将数据从一个DB表复制到另一个DB表?,sql,sql-server,ssms,Sql,Sql Server,Ssms,我想从DB ANIMAL1复制Table DOG,并将数据复制/创建到DB ANIMAL2中的Table DOG 该表还需要复制所有行(主键)ID 我该怎么办 谢谢。如果两台服务器在同一个网络上,您可以创建一个从目标服务器到源服务器的“链接服务器”,然后您可以编写如下内容: INSERT INTO dbo.DOG(list of columns) SELECT (list of columns) FROM SourceServer.ANIMAL2.dbo.DOG 如果您的ID是一个
谢谢。如果两台服务器在同一个网络上,您可以创建一个从目标服务器到源服务器的“链接服务器”,然后您可以编写如下内容:
INSERT INTO dbo.DOG(list of columns)
SELECT (list of columns)
FROM SourceServer.ANIMAL2.dbo.DOG
如果您的ID是一个标识
,则必须在执行以下命令之前启用IDENTITY\u INSERT:
SET IDENTITY_INSERT dbo.DOG ON
INSERT INTO dbo.DOG(list of columns)
SELECT (list of columns)
FROM SourceServer.ANIMAL2.dbo.DOG
SET IDENTITY_INSERT dbo.DOG OFF
并在INSERT命令运行后将其关闭。如果两台服务器位于同一网络上,您可以创建一个从目标服务器到源服务器的“链接服务器”,然后编写如下内容:
INSERT INTO dbo.DOG(list of columns)
SELECT (list of columns)
FROM SourceServer.ANIMAL2.dbo.DOG
如果您的ID是一个标识
,则必须在执行以下命令之前启用IDENTITY\u INSERT:
SET IDENTITY_INSERT dbo.DOG ON
INSERT INTO dbo.DOG(list of columns)
SELECT (list of columns)
FROM SourceServer.ANIMAL2.dbo.DOG
SET IDENTITY_INSERT dbo.DOG OFF
并在INSERT命令运行后将其关闭。我认为bcp可以正常工作。显然,如果表在目标上已经包含行,并且您正在从源中追加更多行,那么如果您违反主键约束,它将发出抱怨
你不会说如果你想做一次,或者很多次,如果是一次,那么BCP可能是你最好的选择,如果一直以来,链接服务器,甚至复制都是你最好的选择,我认为BCP会很好地工作。显然,如果表在目标上已经包含行,并且您正在从源中追加更多行,那么如果您违反主键约束,它将发出抱怨
你不会说如果你想做一次,或者很多次,如果是一次,那么BCP可能是你最好的选择,如果一直以来,链接的服务器,甚至复制都可能是你最好的选择除了marc_的答案,你还可以通过SSMS的向导获取数据。除了marc_的答案,您也可以通过SSMS的向导获取数据。+1-OP应该知道不会保留任何索引和其他元数据(如FK约束、PKs等)。+1-OP应该知道不会保留任何索引和其他元数据(如FK约束、PKs等)。