婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > oracle SQL命令大全

oracle SQL命令大全

熱門(mén)標(biāo)簽:貴陽(yáng)智能電銷機(jī)器人官網(wǎng) 地圖標(biāo)注付款了怎么找不到了 沈陽(yáng)400電話是如何辦理 外呼系統(tǒng)鄭州 北京營(yíng)銷外呼系統(tǒng)廠家 百度地圖標(biāo)注員是干什么 溫州人工外呼系統(tǒng) 外呼系統(tǒng)口號(hào) 北京外呼系統(tǒng)公司排名
delete 刪除一張大表時(shí)空間不釋放,非常慢是因?yàn)檎加么罅康南到y(tǒng)資源,支持回退操作,空間還被這張表占用著。
truncate table 表名 (刪除表中記錄時(shí)釋放表空間)
DML 語(yǔ)句:
表級(jí)共享鎖: 對(duì)于操作一張表中的不同記錄時(shí),互不影響
行級(jí)排它鎖:對(duì)于一行記錄,oracle 會(huì)只允許只有一個(gè)用戶對(duì)它在同一時(shí)間進(jìn)行修改操作
wait() 等到行級(jí)鎖被釋放,才進(jìn)行數(shù)據(jù)操作
drop一張表時(shí)也會(huì)對(duì)表加鎖,DDL排它鎖,所以在刪除一張表時(shí)如果當(dāng)前還有用戶操作表時(shí)不能刪除表
alter table 命令用于修改表的結(jié)構(gòu)(這些命令不會(huì)經(jīng)常用):
增加約束:
alter table 表名 add constraint  約束名 primary key (字段);
解除約束:(刪除約束)
alter table 表名 drop primary key(對(duì)于主鍵約束可以直接用此方法,因?yàn)橐粡埍碇兄挥幸粋€(gè)主鍵約束名, 注意如果主鍵此時(shí)還有其它表引用時(shí)刪除主鍵時(shí)會(huì)出錯(cuò))
alter tbale father drop primary key cascade ; (如果有子表引用主鍵時(shí),要用此語(yǔ)法來(lái)刪除主鍵,這時(shí)子表還存在只是子表中的外鍵約束被及聯(lián)刪除了)
alter table 表名 drop constraint 約束名;
(怎樣取一個(gè)約束名:1、人為的違反約束規(guī)定根據(jù)錯(cuò)誤信息獲取!
2、查詢示圖獲取約束名!)
alter table 表名 disable from primary key ; (相當(dāng)于把一個(gè)表的主鍵禁用)
alter table 表名 enable primary key ;(enable 時(shí)會(huì)自動(dòng)去檢查表的記錄是不是符合要求,如果有臟數(shù)據(jù)時(shí)必須要先刪除臟數(shù)據(jù)才可以 enable)

*******************************************************************
增加字段:
alter table   表名   add(字段字 字段類型)
刪除字段:
alter table   表名 drop(字段)
alter tbale 表名 drop column 字段 ; (8i 以后才支持)
給列改名:920才支持
alter table 表名 rename column 舊字段名 to 新字段名;
修改字段
(此時(shí)應(yīng)注意的問(wèn)題,更改時(shí)要看具體值情況之間的轉(zhuǎn)達(dá)換, 改為字符類型時(shí),必須要為空)
alter table  表名 modify( 字段,類型)
更改表中的字段:
update 表名 set 字段 = 值 where 條件
更改表名
rename 舊表名 to    新表名 ;
刪除表:
trucate table 表名:(表結(jié)構(gòu)還在,數(shù)據(jù)全部刪除,釋放表所占的空間,不支持回退,常用刪除大表)

關(guān)于oralce中產(chǎn)生序列(sequence):
create sequence 序列名alter system flush shared_pool;
(不帶參數(shù)時(shí)默認(rèn)為從1 開(kāi)始每次遞增 1,oracle中為了提高產(chǎn)生序列的效率一般一次性產(chǎn)生20個(gè)序列放入當(dāng)前會(huì)話的序列池中備用以加快效率,序列會(huì)出現(xiàn)不連續(xù)的動(dòng)作回退操作不會(huì)影響序列取值)
sequence 的參數(shù):
increment by n 起始值, start with n 遞增量, maxvalue n 最大值, minvalue n 最小值,cycle | no cycle 輪回, cache n 綬存(第一次取時(shí)會(huì)一次取多少個(gè)id存起來(lái))
查看 sequence 示圖:
desc user_sequences ;
select sequence_name , cache_size , last_number from user_sequences where sequence_name like 's_';
select 序列名.currval from dual 查看當(dāng)前的序列數(shù)
select 序列名.nextval from dual 查看下一個(gè)序列數(shù),它會(huì)自動(dòng)給當(dāng)前的序列加1
為列:nextval currval
(開(kāi)另一個(gè)session時(shí)取當(dāng)前值不成功時(shí),應(yīng)該先取下一個(gè)值,再取當(dāng)前值)
清空當(dāng)前會(huì)話的內(nèi)存:
alter system flush shared_pool;(執(zhí)行此命令要有DBA權(quán)限,一般用戶執(zhí)行出錯(cuò))
修改序列:(此命令不常用,只需了解就行不必深究)
alter sequence 序列名 修改項(xiàng);
刪除序列sequence
drop sequence 序列名;
創(chuàng)建示圖: creating views(屬于了解知識(shí))
desc user_views;
select text from user_views where view_name='TEST1_V1' ;
示圖就相當(dāng)于一條select 語(yǔ)句,定義了一個(gè)示圖就是定義了一個(gè)sql語(yǔ)句,示圖不占空間,使用view 不會(huì)提高性能,但是能簡(jiǎn)單化sql語(yǔ)句
(擴(kuò)展知識(shí): oracle 8i 以后的新示圖)MV 物化視圖(占存儲(chǔ)空間,把select 結(jié)果存在一個(gè)空間,會(huì)提高查詢視圖,增強(qiáng)實(shí)時(shí)性,但是存在刷新問(wèn)題, 主要應(yīng)用在數(shù)據(jù)倉(cāng)庫(kù)中用要用于聚合表)
使用示圖的好處:控制數(shù)據(jù)訪問(wèn)權(quán)限.
如何創(chuàng)建一個(gè)示圖:
create or replace views test_vi as select * from test1 where c1=1;
此時(shí)往表test1(base table 基表)中插入數(shù)據(jù)時(shí):表中沒(méi)能變化,示圖中的數(shù)據(jù)發(fā)生改變
從示圖中插數(shù)據(jù)時(shí)相對(duì)應(yīng)的表會(huì)發(fā)生改變:
往示圖中插數(shù)據(jù)時(shí),會(huì)直接插進(jìn)基表中,查看示圖中的數(shù)據(jù)時(shí),相當(dāng)于就是執(zhí)行創(chuàng)建時(shí)的select語(yǔ)句。
簡(jiǎn)單示圖:能進(jìn)行DML操作。
復(fù)雜示圖:來(lái)源于多張表,不能執(zhí)行DML操作。
關(guān)于rownum:
rownum 有個(gè)特點(diǎn)要么等于1 要么小于某個(gè)值, 不能直接等于某個(gè)值, 不能大于某個(gè)值。rownum常用于分頁(yè)顯示。
練習(xí):查詢出第5條數(shù)據(jù)和第10條數(shù)據(jù)之間:
select first_name , rnum from ( select rownum rnum , first_name from s_emp where rownum =10 ) where rnum between 5 and 10 ;
分面顯示:
SELECT * FROM (SELECT a.*, rownum r FROM S_EMP a WHERE r between 5 AND 10 );
練習(xí):哪些員工的工資比本部門(mén)的平均工資高?
select first_name , salary , avgsal from s_emp e , ( select dept_id , avg (salary ) avgsal from s_emp group by dept_id ) a where e.dept_id =a.dept_id and e.salary > a.avgsal;
在示圖上加一個(gè) with check option 就相當(dāng)于給示圖加上了約束
create view test_v as select * from test where c =1 with check option ;
同義詞:相當(dāng)于別名的作用(***只需了解***)系統(tǒng)自建的同義詞: user_tables
create synonym asd_s_emp for asd_0607.s_emp ;
目的就是為了給asd_0607_s_emp表起另一個(gè)代替的名稱asd.s_emp;注意這個(gè)同義詞只能自己使用;
create public synonym p_s_emp fro asd_0607.s_emp; 創(chuàng)建公共的同義詞,但是要權(quán)限.
刪除同義詞:
drop synonym 同義詞名稱
創(chuàng)建索引: Creating indexes(概念很重要對(duì)系統(tǒng)的性能影響非常大)
建索引的目的就是為了加快查詢速度。
索引就相于一本的書(shū)的目錄。索引點(diǎn)系統(tǒng)空間,屬于表的附屬物。刪除一個(gè)表時(shí),相對(duì)應(yīng)的索引也會(huì)刪除。truncate 表時(shí)索引結(jié)構(gòu)在,但是數(shù)據(jù)不存在。
full table scan 全表掃描
用索引就是為了快速定位數(shù)據(jù):(理解時(shí)就以字典的目錄為例)
查看表的rowid:
select rowid , first_name from s_emp;
rowid 定義的信息有: object block table
每條記錄都有自己的rowid
索引由誰(shuí)創(chuàng)建:用戶,建索引后會(huì)使DML操作效率慢,但是對(duì)用戶查詢會(huì)提高效率,這就是我們建索引的最終目的,
創(chuàng)建一個(gè)索引:
create index 索引名 on 表名 ( 字段名);
create insex testindex on test(c1, c2);
哪些字段應(yīng)該建索引:
經(jīng)常要用where的子句的地方,所以要用索引.用不用索引,關(guān)鍵要看所查詢的數(shù)據(jù)與所有數(shù)據(jù)的百分比,表越大,查詢的記錄越少,索引的效率最高.
替換變量:用符號(hào)來(lái)定義替換變量支持交互性提示,對(duì)于字符性的數(shù)字,一定要寫(xiě)在單引號(hào)之間
set verify on
set verify off;
相當(dāng)于開(kāi)關(guān)變量,用于控制是否顯示新舊的sql語(yǔ)句
select id ,last_name ,salary from s_emp where title='job_title';
更改交互的提示信息:
accept p_dname prompt ' 提示信息';
定義變量:
define p_dname='abc';
分頁(yè)的實(shí)現(xiàn)語(yǔ)句:(可以正常運(yùn)行)
select * from ( select rownum rnum , a.* from (select * from s_emp) a ) where rnum between 5 and 10 ;


本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/andymu077/archive/2009/06/24/4293261.aspx
您可能感興趣的文章:
  • oracle sqlplus 常用命令大全
  • oracle查詢語(yǔ)句大全(oracle 基本命令大全一)
  • Oracle中備份表的簡(jiǎn)單sql命令語(yǔ)句
  • oracle創(chuàng)建表的方法和一些常用命令
  • Oracle數(shù)據(jù)庫(kù)執(zhí)行腳本常用命令小結(jié)
  • Oracle常用命令大全集
  • 如何利用Oracle命令解決函數(shù)運(yùn)行錯(cuò)誤

標(biāo)簽:衢州 溫州 通遼 潮州 衡水 定西 包頭 淮北

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《oracle SQL命令大全》,本文關(guān)鍵詞  oracle,SQL,命令,大全,oracle,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《oracle SQL命令大全》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于oracle SQL命令大全的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 桂林市| 义乌市| 新竹县| 正镶白旗| 新乡市| 尼木县| 开封县| 平昌县| 昌都县| 木兰县| 永州市| 乾安县| 建平县| 华池县| 依兰县| 禹州市| 南部县| 政和县| 蒙城县| 柘荣县| 南城县| 同江市| 吴川市| 葵青区| 临泉县| 南充市| 时尚| 新蔡县| 错那县| 合水县| 普兰县| 顺昌县| 郓城县| 大厂| 嘉黎县| 宣城市| 马鞍山市| 丰城市| 黑山县| 奇台县| 铅山县|