
怎么对应?如果表A中有,表B中就必须有,反之亦然?如果是这样,可以直接在数据库中比较
select from a where a用户号 not in
(select 用户号 from b)
select from b where b用户号 not in
(select 用户号 from a)
两条语句应该都没有返回才对。
如果一定要用VB,就从两个表中读出所有记录放到两个recordset,并按用户号排序。
然后两个recordset作比较,相同则同时后移,不同则报错,直至两个recordset同时移到最后,如果有一个先结束,报错。
SELECT TABLE_NAME+''+COLUMN_NAME as lie FROM INFORMATION_SCHEMACOLUMNS
这句话是查询出数据库的所有列名,2个数据库都执行一次,然后放到excel中
=IF(COUNTIF(行,列)=0,"不重复","")这样就能找出新增的列啦,然后在进行排序
大功告成,C列显示不重复的A列就是我们的新增列
你是两个数据库还是一个库下的两个USER!~
如果是一个库里的两个user
SELECT FROM SANWA_ADMINMU010,UCOOPMC00030
在表前面加上用户名就可以了!~
你还是详细说下吧!~
哦。最简单的办法是把数据库(应该是表吧),变成文本,然后找个版本比较工具,比如Visual Strudio里带的,或者是winmerge,将两个数据表合并,合并完了后,再重新导进数据库。这个方法最好。不需要编程。
如果你通过编程的方式做,那更简单了。先一个临时表,把另一个库里的表存进来,然后用一个SELECT就搞定。
不知道你表中的数据有多少,用IF:
在表B的B1输入=IF(COUNTIF(表A!A1,A1),"","不同") 回车并下拉
补充:
=IF(AND(表A!A1<>A1,OR(表A!A1<>"",A1<>"")),"不同","") 回车并下拉
也行。
数据多的,在表C的A1输入:
=IF(AND(表A!A1<>表B!A1,OR(表A!A1<>"",表B!A1<>"")),"不同","")
回车,向右复制(右拉),再选A1~最右边的(如Z1),一起向下复制(下拉)。
不知道你说的表结构还是表记录的不同,表结构比较很简单,从数据字典里读出每个表的数据(包含字段、类型、索引等等)形成文件,然后把两个数据库结构文件用对比工具就可以搞定,当然现在有很多的现行工具能够将所有表结构形成文本文件(ORACLE如PL/SQL工具);记录的比较就需要你逐表写SQL语句比较了或者将表里的数据按照一定规则导出成文件比较
代码如下:
select from a
a
where not
exists(select from
b b
where aname=bname)
查看表结构
SQL>DESC emp;
查询所有列
SQL>SELECT FROM emp;
查询指定列
SQL>SELECT empmo, ename, mgr FROM emp;
SQL>SELECT DISTINCT mgr FROM emp; 只显示结果不同的项
查询指定行
SQL>SELECT FROM emp WHERE job='CLERK';
结构化查询语言(英文简称:SQL)是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同 数据库系统,,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
以上就是关于vb中比较2个数据库中的数据是否一致全部的内容,包括:vb中比较2个数据库中的数据是否一致、我有两个SQL数据库,A和B,如果对比它两个的不同、在oracle中 怎样对比两个数据库中相同表的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)