繁体   English   中英

将数据从一个表插入到另一个表中但在另一个数据库中

[英]Inserting Data from one table into another table but in a different database

我有两个包含所有相同表的数据库。 所以我试图将数据从一个数据库中的一个表复制到另一数据库中的同一表。

我收到此错误“数据库中已经有一个名为“ PayComponents”的对象。”

不知道另一种方式来实现我想要的

SELECT * INTO [PSD2394].DBO.PayComponents
FROM [PSD1346].DBO.PayComponents
WHERE PCompID != 1 AND PCompID != 2

预期结果-DB-PSD1346中的所有记录,除非PCompID = 1和2插入DB-PSD2394中的PayComponents表中

SELECT INTO每次都会创建一个新表,如果这是您想要的,则需要先删除该表。

要添加到现有表中,您需要为此使用INSERT INTO SELECT,例如以下示例

INSERT * INTO [PSD2394].DBO.PayComponents (column names...)
SELECT pc.column names...
FROM   [PSD1346].DBO.PayComponents pc
WHERE  pc.PCompID != 1 
AND    pc.PCompID != 2

如果[PSD2394].DBO.PayComponents的主键是一个标识字段,则不能复制它,因为数据库不允许您在标识字段中写入自己的值。
万一您真的需要,请尝试

SET IDENTITY_INSERT [PSD2394].DBO.PayComponents ON

do the insert statement here...

SET IDENTITY_INSERT [PSD2394].DBO.PayComponents OFF

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM