怎样用简单的select实现两个数据库之间表的复制?

zzc 2001-08-04 05:14:33
要将一个DSN里的一个表复制到另一个DSN中,不知能不能用select...into实现,
在同一个数据库中能够实现,跨数据库就不知道该用什么样的格式了,请指点。
...全文
272 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
luoxiang2000 2001-08-05
gz
回复
lxj19 2001-08-05
如果是两个数据库都是MDB数据库,则可以在Access中将另一个数据库中的表连接到当前数据库中,如果连入的表名位table1,而另一个表的名字是table2,则写一个SQL语句
Insert Into Table2(可以指定字段,也可以省去) Select Table1.* From Table1 就可以了,如果又一个是Access数据库文件,一个是别的SQL数据库 ,比如是 M SQL Server 7,那就可以在M SQL Server 7中用连接服务器,将Mdb连接到服务器中,如果名字叫 LinkDB1,数据库叫FromDB,你的目的数据库是TODB,则写SQL 语句
Inert Into TODB.dbo.Table2(可以不写) Select * From Linkdb1.FromDb.dbo.Table1
就可以了。如果不清楚,可以给我发Email: lxj96211@163.net


回复
zzc 2001-08-05
谢谢关注,大家的方法还没有完全解决我的问题,袁飞的方法比较接近,但要求两
个数据库中至少有一个为mdb文件,如果以DSN名称替换则会出现找不到<dsn名称>.mdb
的错误,不知道有没有解决办法。
tantengfei的方法也会出现同样错误,将"data source"误认为是一个mdb文件而提示
路径找不着。
回复
zzc 2001-08-05
是在做VB程序时遇上的问题,不能在别的数据库环境下应用。
回复
y1g1y1 2001-08-05
两个 Access 数据库: db1.mdb db2.mdb
db1.mdb 中有表 tab1

ADO:
假设连接 con 打开 db1.
con.excute "SELECT * INTO tab2 IN 'd:\db2.mdb' FROM tab1 "

DAO .
假设数据库 db 打开 db1.
db.excute "SELECT * INTO tab2 IN 'd:\db2.mdb' FROM tab1 "

即可.
回复
tante呃呃 2001-08-04
select * into tablea in " data source " from tableb
回复
withstudy 2001-08-04
如果是SQL SERVER的话,没问题,直接提交一条SQL 语句给SQL SERVER就可以了,用ACCESS好象不行
回复
小星星 2001-08-04
我建议你打开两个connection.两个recordset,将一个记录集复制到另外的一个中
回复
ltpao 2001-08-04
如果要导入数据的数据库为SQL Server,可以用一条语句导入任何数据库的数据
select * into table from OPENROWSET('数据源描述','SQL语句')
回复
zzc 2001-08-04
似乎不能,上面说的方法我都试过,提示ODBC找不到某一个MDB文件,而不是去找DSN名称。
回复
ltpao 2001-08-04
可以的,不过要导入数据的库必须要有Select into/bulk copy权限
回复
songyangk 2001-08-04
你首先得对两个数据库都有操作权限,insert into table1 select * from db.dbo.table2
回复
xuejinlong 2001-08-04
跨库用select into 是不行的。
回复
ltpao 2001-08-04
跨数据库:select * into table from otherdb.dbo.table
回复
相关推荐
发帖

1187

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2001-08-04 05:14
社区公告
暂无公告