数据库 数据库SQL语句五
集合运算 union 并集(两个集合如果有重复部分,那么只显示一次重复部分)
union all 并集(两个集合如果有重复部分,那么重复部分显示两次)
intersect 交集
minus 差集 --查询部门号是10和20号的员工信息
select * from emp where deptno=
union
select * from emp where deptno= 集合运算注意事项:
.参与运算的各个集合必须列数相同,并且类型一致
.采用第一个集合的表头作为结果集的表头
DML数据操作 insert语句语法
使用insert语句向表中插入数据
insert into 表名 (列名1,列名2,...)
values (value1,value2,...) --插入一条完整的数据(不需要加列名)
insert into emp values(,'JACk','CLERK',,'17-12月-80',,null,) --插入一条不完整的数据(需要加列名)
insert into emp (EMPNO ,ENAME,JOB,MGR,SAL,DEPTNO) values(,'JHON','CLERK',,,) --插入空值的两种方式
.隐式插入(不完整插入就是隐式插入)
.显式插入(null就是显式插入) --插入日期的指定值
insert into emp values(,'BLACKH','CLERK',,to_date('1990-2-4 9:30:28','yyyy-mm-dd hh12:mi:ss'),,null,) --插入中的&操作符(需要用户输入empno和deptno的值)
insert into emp (EMPNO,ENAME,JOB,MGR,SAL,DEPTNO) values(&empno,'JHON','CLERK',,,&deptno) --回退事务
SQL> rollback;--oracle默认开启事务 --新创建一个表(拷贝emp的表结构)
create table t1
as
select * from emp where = --从emp表中把10号部门的员工数据插入到t1表中
insert into t1 ( select * from emp where deptno= );
--子查询不光在select中使用,而且可以在insert子句中使用
--不必书写values子句
--子查询中的值列表应与insert子句中的列名对应
update语句语法
--更新数据
--可以一次更新多条数据
update 表名
set colnum1=value1,colnum2=value2,...
where condition eg:SQL> update t1 set ename='JOKE',sal= where empno=;
delete语句
--从表中删除数据(表是一直存在的)
delete from 表名
where condition eg: delete from t1 where empno=;
truncate语句
truncate:清空表
truncate table t1;--删除表中的所有数据
delete和truncate的区别
.delete逐条删除 truncate先摧毁再重建
.delete语言是DML语言 truncate是DDL语言
DML语言可以闪回,做错了并且提交了,可通过闪回撤销操作
DDL语言不可以闪回
.delete是逐条删除,会产生碎片,truncate不会产生碎片
.delete不会释放空间,truncate会
.delete可以回滚,,truncate不可以
.oracle delete快 mysql truncate快
sql语句优化⑤:oracle中删除表数据,delete快;mysql中删除表数据,truncate快。
常用oracle命令
--set timing off;--关闭sql执行时间显示
--set feedback off;--关闭数据反馈
--@c:\sql.sql--从c盘导入sql文件
--set timing on;--打开sql执行时间显示
数据库事务
概念:一个或多个DML语句组成
特点:要么都成功,要么都失败
特性:原子性 一致性 隔离性 持久性
事务的隔离性:多个客户端同时操作数据库时,会隔离他们的操作,
因为oracle实例并不会直接将操作提交到数据库,所以多个事务之间的操作互不影响
事务的开始和结束
.事务起始的标志:DHL语言(oracle默认事务是打开的)
.事务结束的标志
提交:显式提交commit
隐式提交()执行DDL语言,DDL语言能隐式的提交数据
eg:create table语言
()正常退出
回滚:显式:rollback
隐式 断电,非正常退出,系统出错
回滚到保存点
.使用savepoint语句在当前事务中创建保存点
eg:savepoint al;--创建保存点a1
.使用rollback to savepoint 语句回滚到创建的保存点
eg:rollback to savepoint a1;回滚到a1保存点
数据库 数据库SQL语句五的更多相关文章
- Oracle数据库 基础SQL语句练习
一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng ...
- mysql(数据库,sql语句,普通查询)
第1章 数据库 1.1 数据库概述 l 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作. l 什 ...
- 总结一些关于操作数据库是sql语句还是存储过程问题
总结一些关于操作数据库是sql语句还是存储过程问题 程序中,你跟数据的交互,需要向数据库拿数据.更改数据库的数据等,这些操作,本身不是程序完成的,而是程序发命令给数据库去做的,不管是通过sql语句方式 ...
- SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句
附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', file ...
- 在线数据库表(sql语句)生成java实体类工具
相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设 ...
- GP数据库 常用SQL语句
GP数据库 常用SQL语句 --1,查看列名以及类型 select upper(column_name) ,data_type from information_schema.columns wher ...
- Oracle,SQL Server 数据库较MySql数据库,Sql语句差异
原文:Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 1.关系型数据库 百度百科 关系数据库 ...
- [数据库]简单SQL语句总结
1.在查询结果中显示列名:a.用as关键字:select name as '姓名' from students order by ageb.直接表示:select name '姓名' from ...
- 《大话数据库》-SQL语句执行时,底层究竟做了什么小动作?
<大话数据库>-SQL语句执行时,底层究竟做了什么小动作? 前言 大家好,我是Taoye,试图用玩世不恭过的态度对待生活的Coder. 现如今我们已然进入了大数据时代,无论是业内还是业外的 ...
随机推荐
- MFC自定义消息
本文地址:http://blog.163.com/strive_only/blog/static/893801682010101911467765/ 消息机制是windows的典型运行机制,在MFC中 ...
- uglifyjs压缩js文件(指令压缩/ 批量压缩/ 编程方式压缩)
一.指令压缩 1.安装node,npm——详细见nodejs安装与使用入门 2.安装 uglifyjs——npm install -g uglify-js 3.压缩例子:1)uglifyjs mai ...
- 调用test case集,并生成测试报告
结构是 test_all.py 进行配置,执行所有测试用例集,并合并测试报告到同一个文件 #test_all.py 进行配置,执行所有测试用例集 # coding = utf-8 from time ...
- selenium webdriver python 开始
学习资料: Selenium with Python: http://selenium-python.readthedocs.org/en/latest/index.html 乙醇的python se ...
- HTTP学习笔记2-请求结构
8,HTTP请求 客户端通过发送HTTP请求向服务器请求对资源的访问. HTTP请求由三部分组成,分别是:请求行,消息报头,请求正文. 9,HTTP请求-请求行 请求行以一个方法符号开头,后面跟着请求 ...
- LSPCI具体解释分析
一.PCI简单介绍 PCI是一种外设总线规范.我们先来看一下什么是总线:总线是一种传输信号的路径或信道.典型情况是,总线是连接于一个或多个导体的电气连线,总 线上连接的全部设备可在同一时间收到 ...
- shell 死循环
例1: 运行脚本后会自动加载firefox浏览器,并打开指定网页.如果用户关闭firefox,脚本会再次自动重新打开firefox. 如需结束循环,中止t2.sh进程即可.注意不要同时执行 ...
- [转] GPS坐标转换经纬度及换算方法
GPS坐标和经纬度的算法和概率不太一样,但是我们可能会将他们互通起来用,下面先贴上我做的转换工具:http://map.yanue.net/gps.html.里面实现了gps到谷歌地图百度地图经纬度的 ...
- C#获取窗口,模拟按键操作
C#获取窗口,模拟按键操作,实现计算器模拟操作.首先引用. using System.Runtime.InteropServices; 使用DllImport引入两个函数: // Get a hand ...
- 为什么要配置path环境变量?
一:关于path环境变量--为了在任意目录下,使用javac/java命令 第一种配置方法: 通过配置path环境变量,我们可以使某个程序,比如javac.exe,在任意目录下都可以运行,而不用跑到j ...