设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 71|回复: 6
打印 上一主题 下一主题

[求助]数据库转移

[复制链接]
跳转到指定楼层
1#
发表于 2009-12-27 02:36:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在有两个数据库都已经写入了一定的数据,想把他们合并,但是其中有一些数据是重复的.希望合并到一个数据库里面并且没有重复项,希望高手指路,最好给出ASP实现ACCESS转移的部分关键代码,不省感激.
2#
发表于 2009-12-27 02:36:57 | 只看该作者
set rs = server.createobject("adodb.recordset")
sql = "select * from table1"
rs.open sql,conn,1,1
do while not rs.eof
set rs1 = server.createobject("adodb.recordset")
sql1 = "select * from table2 where 字段='"&rs("字段")&"'"
rs1.open sql1,conn,1,1

if rs1.eof then
set rs2 = server.createobject("adodb.recordset")
sql2 = "insert语句"
rs2.open sql2,conn,1,3
rs2.close
set rs2 = nothing
end if
rs1.close
set rs1 = nothing
rs.movenext
loop
rs.close
set rs = nothing

用这样循环每一条记录并进行比较的方法应该可以做到。。
但注意的是这种方法并不是十分的可取
当数据库中记录数量非常大的时候CUP的占用会很高
还有就是 如果2个数据库都是同一种的话还可以
如果一个是SQL 一个是AC的换 就要考虑这两个数据库中的指针移动速度的问题了
SQL的指针会比AC的快 容易出现数据不符等错误
要做一定的时间延迟 例如隔几秒插入一些数据。。。。。

感觉应该还有更好的方法
关注中。。
回复 支持 反对

使用道具 举报

3#
发表于 2009-12-27 02:37:04 | 只看该作者
高手出招,果然不同.谢谢两位了
回复 支持 反对

使用道具 举报

4#
发表于 2009-12-27 02:37:10 | 只看该作者
3楼的好厉害  你的方法我没考虑到。。。
回复 支持 反对

使用道具 举报

5#
发表于 2009-12-27 02:37:16 | 只看该作者
也可以用联合查询的方式,select * into 数据库1.table3 from 数据库1.table1 union(select * from 数据库2.table2)。如果用union all则把所有的记录包括重复的都会添加到table3,用union则只是添加了不同的项。
回复 支持 反对

使用道具 举报

6#
发表于 2010-2-23 05:05:05 | 只看该作者
美丽让男人停下,智慧让男人留下。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-18 12:33 , Processed in 0.109119 second(s), 8 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表