2012-03-05 56 views
0

我在同一台服务器上有两个数据库。一个数据库比另一个更新,并且其模式修改了很多。我想将旧数据库中的表中的数据传输到新数据库中的表中,但我需要对该过程进行全面控制,以便我可以将旧数据模型化以适应新模式。如何手动将行从一个数据库移动到下一个?

[NewDB].[dbo].[Aliases] 

[OldDB].[Terminal].[Alias] 

我还不是很擅长SQL。有没有办法循环遍历旧表中的所有记录,然后在循环的每次迭代中为新表创建自定义插入语句?

+0

为什么不只是写一个插入的列上市? – 2012-03-05 20:03:01

+0

传输大量数据时永远不会循环记录,您将在那里享受余生的乐趣! – HLGEM 2012-03-05 20:39:33

回答

2

如果两个表都在同一个数据库中,则以同样的方式进行。只需完全限定表格的名称。例如:

INSERT INTO [NewDB].[dbo].[Aliases] (col1, col2, col3) 
    SELECT LEFT(col1,3), col2, col3 FROM [OldDB].[Terminal].[Alias] 
0
INSERT INTO NEWDB..TABLENAME(*fieldlist*) 
SELECT *fieldlist* FROM OLDDB..TABLENAME 
相关问题