sql server 2008 中如何将一个数据库中已建好的表中的数据导入到另一个sql2008数据库中

如题所述

问:将DB1表A的数据导入到DB2的表B中?

         数据库:DB1 表:A

         数据库:DB2 表:B

 

答:分以下几种情况:

 

【数据量很小,表结构一致】

1、select * from  DB1.dbo.A  

2、结果集全选,复制。

3、表B,右键-编辑前200行,然后粘贴即可。

 

【DB1和DB2在同一台服务器】

1、INSERT INTO SELECT语句

      语句形式为:Insert into DB2.dbo.B(field1,field2) select value1,value2 from DB1.dbo.A

     要求目标表B必须存在,由于目标表B已经存在,所以我们除了插入源表A的字段外,还可以插入常量。

 

2、SELECT INTO FROM语句

      语句形式为:SELECT value1, value2 into DB2.dbo.B from DB1.dbo.A

      要求目标表B不存在,因为在插入时会自动创建表B,并将A中指定字段数据复制到B中。

 

【DB1和DB2在不同服务器】

1、在DB1里面创建连接DB2的对象,

--创建链接服务器 (其中db2server是DB2的ip地址或服务器名)
exec sp_addlinkedserver   'srv_lnk', '', 'SQLOLEDB','db2server'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','123456789' 
Go
--数据导入(表B存在) 
Insert into srv_lnk.DB2.dbo.B(field1,field2) 
select value1,value2 from DB1.dbo.A 
--数据导入(表B不存在) 
SELECT value1,value2 into srv_lnk.DB2.dbo.B 
from DB1.dbo.A

--关闭连接
exec sp_dropserver 'srv_lnk','droplogins'

追问

兄弟,一共将近三百张表!这样一点一点写脚本有些麻烦啊 有木有方便一点的工具啊?

追答

要么直接用数据库备份还原。
但你又说数据结构不一样,那只能一个表一个表的写了。

追问

一共有800个表 300多张表有数据,我觉得把数据导过去会比较方便! 在给提供点别的好方法吧

追答

数据结构相同就直接导过去

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-04
可以右键数据库,选任务,导出数据,或者复制数据库
第2个回答  2013-10-03
文件格式 复制粘贴 打开 另存为。。。
第3个回答  2013-10-05
create table table_name as select * from your table_name.
相似回答