sql的類型:
1、DML(Data Menipulation Language數(shù)據(jù)操作語言) : select insert update delete增刪改查
2、DDL(Data Definition Language 數(shù)據(jù)定義語言) : create alter drop truncate table創(chuàng)建 修改 刪除 清空表
create drop view sequence index synonym 創(chuàng)建 ,刪除,視圖,序列,索引,同義詞
3、DCL(Data Control Language 數(shù)據(jù)控制語言) : grant revoke 授予,撤銷(權(quán)限)
一:地址符
二:批處理
三:海量拷貝數(shù)據(jù)(oracle)
1、數(shù)據(jù)泵
2、sql*Loader
3、外部表
oracle 11g 17講移動(dòng)數(shù)據(jù)
插入更新和刪除引起數(shù)據(jù)的變化:
數(shù)據(jù)的完整性:定義在表上的約束 (主鍵外鍵的約束)
delete 和truncate( 刪除、清空數(shù)據(jù)) 的五個(gè)區(qū)別
1、delete逐條刪除數(shù)據(jù) ?truncate先摧毀表再重新建
2、(根本區(qū)別)delete 是DML語句 truncate是DDL語句
DML語句可以回滾(rollback)? ? ? DDL不可以回滾(為什么??)
3、delete不會(huì)釋放空間 ? ? truncate可以釋放空間
因?yàn)閐elete不是真正把數(shù)據(jù)刪除,換了一個(gè)undo表空間(回收站)存起來
4、delete會(huì)產(chǎn)生碎片,truncate不會(huì)產(chǎn)生
如果刪除mary的數(shù)據(jù)

新的數(shù)據(jù)會(huì)插入到高水位線的位置,mary的位置是空著的,會(huì)影響查詢的速度,所以要去掉碎片


去掉碎片的兩種方法:
一、alter table <表名> move;
二、導(dǎo)出 導(dǎo)入
參考:數(shù)據(jù)的移動(dòng)中導(dǎo)入與導(dǎo)出
5、delete可以閃回? ? truncate不可以(flashback)
哪個(gè)刪除的方式比較快: ?
delete比truncate快,因?yàn)閐elete并沒有真正把數(shù)據(jù)刪除
------set feedback off?
set timing on
數(shù)據(jù)庫事務(wù)
由以下的部門組成:
1、一個(gè)或多個(gè)DML語句
2、一個(gè)DDL(data definition Language) 數(shù)據(jù)定義語言語句
3、一個(gè)DCL(data control Language)數(shù)據(jù)控制語言語句
oracle中事務(wù)的標(biāo)志:
1、起始標(biāo)志:事務(wù)中的第一條DML語句
delete=刪除數(shù)據(jù)+開啟事務(wù)
2、結(jié)束標(biāo)志:提交和回滾都屬于結(jié)束
提交方式:?
顯示方式 ? commit
隱式方式 ?正常退出 exit DDL和DCL
回滾方式:
顯示方式 rollback
隱式方式 非正常退出 掉電 宕機(jī)
數(shù)據(jù)庫的隔離級(jí)別
my sql默認(rèn)的數(shù)據(jù)庫提供4種事務(wù)隔離級(jí)別:read commited,serializable,read uncommited,repeatable read四種
oracle支持的3個(gè)事務(wù)隔離級(jí)別:read commited ? serializable和read only
set transaction read only;---事務(wù)處理集只讀
只讀功能,只能查詢,支持并發(fā),不影響效率