如果是SQL SERVER 2005及以上版本你可以先在目标数据库建立一个连接服务器(服务器对象->连接服务器)
然后就可以直接在本数据库调用想要复制的表了。有个into可以将表结构和数据直接复制过来,语法如下
SELECT * INTO 新表的表名
FROM 连接服务器名称.数据库名称.dbo.需要复制的表名
这里两个数据库是不是在同一台电脑上很重要,要是在同一台电脑上,用语句就能搞定。前提是要导入数据的数据库里面不存在这个表。
不存在复制本题。
select *
into 新数据库.新表名
from 旧数据库.旧表名
如果只导入某列的话 select 列1,列2...
把要导入的列名写出来.
如果已经存在表,仅仅是要将数据复制过去,那么语句就是:
insert into 新数据库名.新表名
select *
from 旧数据库名.旧表名
导入部分列:
insert into 新数据库名.新表名(列1,列2,...) values
select 列1,列2,...
from 旧数据库名.旧表名
如果另一个库中没有同名的表
select * into b数据库.dbo.a表 from a数据库.dbo.a表 where 条件
如果是追加到另一个表中
inert into b数据库.dbo.a表
select * from a数据库.dbo.a表 where 条件
不同数据库的格式: [数据库名.所有者名.表名]
INSERT INTO 数据库B.dbo.表2
SELECT * FROM 数据库A.dbo.表1 WHERE ....
insert into 库2.表 select * from 库1.表