数据库 数据库SQL语句五
生活随笔
收集整理的這篇文章主要介紹了
数据库 数据库SQL语句五
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
集合運算union 并集(兩個集合如果有重復部分,那么只顯示一次重復部分)
union all 并集(兩個集合如果有重復部分,那么重復部分顯示兩次)
intersect 交集
minus 差集--查詢部門號是10和20號的員工信息
select * from emp where deptno=10
union
select * from emp where deptno=20集合運算注意事項:
1.參與運算的各個集合必須列數(shù)相同,并且類型一致
2.采用第一個集合的表頭作為結(jié)果集的表頭 DML數(shù)據(jù)操作insert語句語法
使用insert語句向表中插入數(shù)據(jù)
insert into 表名 (列名1,列名2,...)
values (value1,value2,...)--插入一條完整的數(shù)據(jù)(不需要加列名)
insert into emp values(7288,'JACk','CLERK',7902,'17-12月-80',1600,null,20)--插入一條不完整的數(shù)據(jù)(需要加列名)
insert into emp (EMPNO ,ENAME,JOB,MGR,SAL,DEPTNO) values(7289,'JHON','CLERK',7902,1780,20)--插入空值的兩種方式
1.隱式插入(不完整插入就是隱式插入)
2.顯式插入(null就是顯式插入)--插入日期的指定值
insert into emp values(7293,'BLACKH','CLERK',7902,to_date('1990-2-4 9:30:28','yyyy-mm-dd hh12:mi:ss'),3400,null,20)--插入中的&操作符(需要用戶輸入empno和deptno的值)
insert into emp (EMPNO,ENAME,JOB,MGR,SAL,DEPTNO) values(&empno,'JHON','CLERK',7902,1780,&deptno)--回退事務(wù)
SQL> rollback;--oracle默認開啟事務(wù)--新創(chuàng)建一個表(拷貝emp的表結(jié)構(gòu))
create table t1as select * from emp where 1=2--從emp表中把10號部門的員工數(shù)據(jù)插入到t1表中insert into t1 ( select * from emp where deptno=10 );
--子查詢不光在select中使用,而且可以在insert子句中使用
--不必書寫values子句
--子查詢中的值列表應(yīng)與insert子句中的列名對應(yīng) update語句語法
--更新數(shù)據(jù)
--可以一次更新多條數(shù)據(jù)
update 表名
set colnum1=value1,colnum2=value2,...
where conditioneg:SQL> update t1 set ename='JOKE',sal=3000 where empno=7782; delete語句
--從表中刪除數(shù)據(jù)(表是一直存在的)
delete from 表名
where conditioneg: delete from t1 where empno=7782; truncate語句
truncate:清空表
truncate table t1;--刪除表中的所有數(shù)據(jù) delete和truncate的區(qū)別
1.delete逐條刪除 truncate先摧毀再重建
2.delete語言是DML語言 truncate是DDL語言
DML語言可以閃回,做錯了并且提交了,可通過閃回撤銷操作
DDL語言不可以閃回
3.delete是逐條刪除,會產(chǎn)生碎片,truncate不會產(chǎn)生碎片
4.delete不會釋放空間,truncate會
5.delete可以回滾,,truncate不可以
6.oracle delete快 mysql truncate快 sql語句優(yōu)化⑤:oracle中刪除表數(shù)據(jù),delete快;mysql中刪除表數(shù)據(jù),truncate快。 常用oracle命令
--set timing off;--關(guān)閉sql執(zhí)行時間顯示
--set feedback off;--關(guān)閉數(shù)據(jù)反饋
--@c:\sql.sql--從c盤導入sql文件
--set timing on;--打開sql執(zhí)行時間顯示 數(shù)據(jù)庫事務(wù)
概念:一個或多個DML語句組成
特點:要么都成功,要么都失敗
特性:原子性 一致性 隔離性 持久性
事務(wù)的隔離性:多個客戶端同時操作數(shù)據(jù)庫時,會隔離他們的操作,因為oracle實例并不會直接將操作提交到數(shù)據(jù)庫,所以多個事務(wù)之間的操作互不影響 事務(wù)的開始和結(jié)束
1.事務(wù)起始的標志:DHL語言(oracle默認事務(wù)是打開的)
2.事務(wù)結(jié)束的標志提交:顯式提交commit隱式提交(1)執(zhí)行DDL語言,DDL語言能隱式的提交數(shù)據(jù)eg:create table語言(2)正常退出回滾:顯式:rollback隱式 斷電,非正常退出,系統(tǒng)出錯 回滾到保存點
1.使用savepoint語句在當前事務(wù)中創(chuàng)建保存點
eg:savepoint al;--創(chuàng)建保存點a1
2.使用rollback to savepoint 語句回滾到創(chuàng)建的保存點
eg:rollback to savepoint a1;回滾到a1保存點
?
轉(zhuǎn)載于:https://www.cnblogs.com/zhanggaofeng/p/6266119.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的数据库 数据库SQL语句五的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php mysql installed_
- 下一篇: 数据库循环添加数据