oracle表结构和表内容差异比对【原】
oracle表结构和表内容差异比对
oracle中有三种集合操作,他们会把左边和右边的select 结果集进行集合操作.
- union 并集
- intersect 交集
- minus 差集
假设有如下两张表 STUDENT_A 和 STUDENT_B
create table STUDENT_A
(
id VARCHAR2(36) not null,
name VARCHAR2(100),
age NUMBER,
sex VARCHAR2(2)
); insert into STUDENT_A (id, name, age, sex)
values ('', 'bobo', 28, '');
insert into STUDENT_A (id, name, age, sex)
values ('', 'sisi', 29, '');
commit; create table STUDENT_B
(
id VARCHAR2(36) not null,
name VARCHAR2(100),
age NUMBER,
clazz VARCHAR2(36)
); insert into STUDENT_B (id, name, age, clazz)
values ('', 'bobo', 28, '');
insert into STUDENT_B (id, name, age, clazz)
values ('', 'sisi', 29, '');
insert into STUDENT_B (id, name, age, clazz)
values ('', 'kiki', 30, '');
commit;
效果图如下:


比较两表结构差异语句:
注意下面的小括号不能省,因为是从左到右计算的,如果省掉计算公式就不一样了哦,大家可以自行脑补.
(
SELECT column_name FROM user_tab_columns WHERE table_name = 'STUDENT_A'
MINUS
SELECT COLUMN_name FROM user_tab_columns WHERE table_name = 'STUDENT_B'
)
UNION
(
SELECT column_name FROM user_tab_columns WHERE table_name = 'STUDENT_B'
MINUS
SELECT COLUMN_name FROM user_tab_columns WHERE table_name = 'STUDENT_A'
)
结果图如下:

比较两表内容语句:
注意下面的小括号不能省,因为是从左到右计算的,如果省掉计算公式就不一样了哦,大家可以自行脑补.
(
SELECT * FROM STUDENT_A
MINUS
SELECT * FROM STUDENT_B
)
UNION
(
SELECT * FROM STUDENT_B
MINUS
SELECT * FROM STUDENT_A
)
结果图如下:

同上图可知比较内容的时候,是不关心字段名是否有差异的,它只关心字段的类型和值.
oracle表结构和表内容差异比对【原】的更多相关文章
- oracle表结构和表内容差异比对
oracle表结构和表内容差异比对 oracle中有三种集合操作,他们会把左边和右边的select 结果集进行集合操作. union 并集 intersect 交集 minus 差集 假设有如下两张表 ...
- oracle 快速复制表结构、表数据
1.情景展示 根据现有的表,建一个新的表,要求:新表的结构与原有表的表结构一模一样,如何快速实现? 根据现有的表,建一个新的表,要求:新表的结构.数据与原表一模一样,如何实现快速复制旧表? 2.解 ...
- Mysql 复制表结构 及其表的内容
顺便转一下Mysql复制表结构.表数据的方法: 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们 ...
- Java连接MySQL数据库。编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计。
题目2:编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计.之后,可根据显示的内容进行某条记录的删除(以id为条 ...
- C# DateTime的11种构造函数 [Abp 源码分析]十五、自动审计记录 .Net 登陆的时候添加验证码 使用Topshelf开发Windows服务、记录日志 日常杂记——C#验证码 c#_生成图片式验证码 C# 利用SharpZipLib生成压缩包 Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库
C# DateTime的11种构造函数 别的也不多说没直接贴代码 using System; using System.Collections.Generic; using System.Glob ...
- SQL复制表结构或表数据
需求: 软件开发过程中,一般会部署两个数据库:一个测试数据库提供给开发和测试过程使用:一个运维数据库提供上线使用.当需求变化需增加表时,会遇到数据库表结构或表数据同步的问题,这时就要复制表结构或表数据 ...
- 【MySQL】MySQL复制表结构、表数据
平常,复制.备份表,一般都直接操作IDE完成.但有时,一些初始化数据的脚本,在操作数据前,最好备份下操作表的结构.数据,不至于出错了被置于为难的境地. 所以复制表结构.表数据的语句就派上用场. > ...
- mysqldump批量导出(多张表)表结构及表数据
Mysql 批量导出表结构(数据) 仅导出结构,不导出数据: 1.导出數據库為dbname的表结构 mysqldump -h主机地址 -u用户名 -p密码 -d dbname >db.s ...
- Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库
1.第一步,在本地数据库中建一个与服务器同名的数据库 2.第二步,右键源数据库,任务>导出数据,弹出导入导出提示框,点下一步继续 3.远程数据库操作,确认服务器名称(服务器地址).身份验证(输入 ...
随机推荐
- JavaScript表单验证登录
在登录时,通常是将输入的信息原封不动的传送给后端的处理程序,然后处理之后返回结果,那么可能后端服务器的压力就很大,所以可以先在提交表单之前进行一些简单的检测,然后再发给后端,减小服务器的一部分压力: ...
- PAT 1083 是否存在相等的差
https://pintia.cn/problem-sets/994805260223102976/problems/994805260780945408 给定 N 张卡片,正面分别写上 1.2.…… ...
- Hadoop技术里面有BSP模型、MPI模型
MPI模型,各种编程语言的库挺多. BSP模型,刚才知道.
- ecshop验证码图片无法显示终极解决办法
ecshop验证码图片无法显示终极解决办法 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2014-06-06 客户在安装好ecshop之后所有前台的证码不显示,后 ...
- Oracle 和 SQLSERVER 重新获取统计信息的方法
1. Oracle 重新获取统计信息的命令 exec dbms_stats.gather_schema_stats(ownname =>) # 需要修改 ownername options 指定 ...
- 原生NodeJs制作一个简易聊天室
准备工作 安装NodeJs环境 安装编译器Sublime 如果网速不理想,可以百度一下如何加快npm的速度~ 使用node搭建一个简单的网站后台 做完准备工作之后,新建文件夹chatroom,在cha ...
- js screen
windows.screen對象包含包含對象屏幕的信息: screen.availheight;屏幕高度 screen.availwidth;屏幕寬度
- Freemarker空值判断
freemarker中显示某对象使用${name}. 但如果name为null,freemarker就会报错.如果需要判断对象是否为空: <#if name??> …… </#if& ...
- c++ 可变参数模板
可变参数模板,自己尝试了个例子,如下: // variadicTemplates.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #incl ...
- [资源]--完美解决--用VS中的Git做代码管理器,与他人共享代码
1.创建代码仓库,这里说一下为什么要创建仓库,Git不能够作为源代码管理器,vs中自带的也只能够在本地进行管理,要和他们共享的话必须要有服务器端去存储代码,类似于SVN,它就有客户端和服务器端,这里推 ...