将数据从db插入另一个db

Pol*_*Dev 7 sql sql-server sql-server-2008 sql-insert

我想从旧的数据库表中获取值到新的数据库表.

旧数据库结构:

表I: Country

  • CountryId
  • 国家的名字

新的数据库结构

表二: Countries

  • ID
  • 名称

我使用了以下插入查询,如,

select 'insert into Countries (Id, Name) select ', countryid, countryname from Country
Run Code Online (Sandbox Code Playgroud)

但我有结果,如,

  • insert into Countries(Id,Name) select 1 India
  • insert into Countries(Id,Name) select 2 Any Country

像那样.

但我需要结果,如,

insert into Countries (Id, Name) values (1, 'India')
Run Code Online (Sandbox Code Playgroud)

为实现这一目标,查询是什么?帮我...

Nen*_*vic 10

如果要传输大量数据和多个表,我建议使用SQL Server Management Studio提供的导入/导出向导.

http://www.mssqltips.com/sqlservertutorial/203/simple-way-to-import-data-into-sql-server/

编辑:但是,如果没有大量数据并且两个系统没有连接 - 并且您需要生成脚本来传输数据,那么您的查询应如下所示:

SELECT 'INSERT INTO Countries (Id, Name) VALUES (' + CAST(countryid AS VARCHAR(50)) + ', ''' + countryname + ''')' from Country
Run Code Online (Sandbox Code Playgroud)


Ale*_*nko 5

使用简单的INSERT语句(database_name.[schema_name] .table)

INSERT [NewDB].[your_schema].[Countries](Id,Name)
SELECT CountryId, CountryName
FROM [OldDB].[your_schema].[Country]
Run Code Online (Sandbox Code Playgroud)


ser*_*jja 5

如果两个数据库都在一台服务器上,你可以这样做:

insert into [db1name].[dbo].[Countries] (Id, Name)
select CountryId, CountryName
from [db2name].[dbo].[Countries]
where _your where clause_
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助