oracle+SQL語法大全.ppt_第1頁
oracle+SQL語法大全.ppt_第2頁
oracle+SQL語法大全.ppt_第3頁
oracle+SQL語法大全.ppt_第4頁
oracle+SQL語法大全.ppt_第5頁
已閱讀5頁,還剩62頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

關(guān)系數(shù)據(jù)庫標準語言SQL/1,SQL語言初步數(shù)據(jù)查詢語句數(shù)據(jù)庫更新語句數(shù)據(jù)定義語句數(shù)據(jù)控制語句,什麼是SQL?,SQL:Structuredquerylanguage功能:查詢、操縱、定義、控制特點:1、一體化;2、兩種使用方式,統(tǒng)一的語法結(jié)構(gòu);方式一、聯(lián)機交互使用方式;方式二、嵌入式。3、高度非過程化;4、語言簡潔,易學易用。,SQL支持關(guān)系數(shù)據(jù)庫三級模式,基本表:獨立存在的表。每個基表對應(yīng)一個存儲文件,一個表可帶若干索引。存儲文件+索引=內(nèi)模式視圖:是一個虛表。數(shù)據(jù)庫中僅存視圖定義,不存對應(yīng)的數(shù)據(jù)。,SQL的三級模式,外模式,模式,內(nèi)模式,Storefile1,Storefile2,Storefile3,Storefile4,Basetable1,Basetable2,Basetable3,Basetable4,View1,View2,SQL,用戶,SQL命令的種類,DDL,數(shù)據(jù)定義語言DML,數(shù)據(jù)操縱語言DQL,數(shù)據(jù)查詢語言DCL,數(shù)據(jù)控制語言數(shù)據(jù)管理命令事務(wù)性控制命令,DDL,數(shù)據(jù)定義語言,用戶創(chuàng)建或重新構(gòu)建數(shù)據(jù)庫的語言,CREATEINDEXALTERINDEXDROPINDEX,CREATETABLEALTERTABLEDROPTABLE,DML,數(shù)據(jù)操縱語言,用于在關(guān)系數(shù)據(jù)庫對象中操縱數(shù)據(jù)INSERTUPDATEDELETEDQL,數(shù)據(jù)查詢語言對數(shù)據(jù)庫中的信息尋找和定位SELECT,DCL,數(shù)據(jù)控制語言,用于創(chuàng)建與用戶訪問相關(guān)的對象,也控制著用戶的權(quán)限分配ALTERPASSWORD改變口令GRANT為用戶授予特權(quán)REVOKE從用戶處收回特權(quán),數(shù)據(jù)管理命令,審計和分析對數(shù)據(jù)庫的操作,并可分析系統(tǒng)的執(zhí)行過程STARTAUDITSTOPAUDIT,事務(wù)性控制命令,用戶管理數(shù)據(jù)庫的事務(wù)命令COMMIT用于保護數(shù)據(jù)庫的事務(wù)ROLLBACK用于撤消數(shù)據(jù)庫的事務(wù)SAVEPOINT創(chuàng)建一組事務(wù)中的撤消點SETTRANSACTION給事務(wù)命名,數(shù)據(jù)庫中的表結(jié)構(gòu),數(shù)據(jù)庫中的表數(shù)據(jù)和基本數(shù)據(jù)類型,數(shù)據(jù)庫中的表,表:字段、記錄、列、主鍵,customer_tbl,Order_tbl,Products_tbl,Prod_idProd_desccost112candy1.35113plastic1.04,Products_tbl,記錄,列(字段),主鍵,數(shù)據(jù)和基本數(shù)據(jù)類型,數(shù)據(jù)是存儲在數(shù)據(jù)庫中的信息集合。數(shù)據(jù)類型用于給特定的數(shù)據(jù)提供規(guī)則。基本數(shù)據(jù)類型包括:字符串數(shù)字日期和時間值,字符串,定長字符串:CHARACTER(n)變長字符串:CHARACTERVARYING(n),數(shù)字值,BIT(n)BITVERYING(n)DECIMAL(n,n)INTEGERSMALLINTFLOAT(p)REAL(s)DOUBLEPRECISION(p),日期和時間值,DATE(YEAR,MONTH,DAY)TIME(HOUR,MINUTE,SECOND)INTERVALTIMESTAMP,NULL值:為空。,數(shù)據(jù)查詢語句,語法:SELECT*|all|column1,column2FROMtable1,table2WHEREconditionGROUPBYcolumn1ORDERBYcolumn2(asc,desc),按列取值相等的原則進行分組,按列值進行排序,例1:SELECT*FROMproducts_tblWHEREcost,=。注意比較雙方的數(shù)據(jù)類型。2、算術(shù)運算符包括:+,-,*,/等。與數(shù)學運算規(guī)則一致。,2、邏輯操作符,ISNULL(是否為空)BETWEEN(在某兩個值之間)IN(一系列值中)LIKE(相似值的比較)EXITS(是否存在符合條件的數(shù)據(jù))UNIQUE(是否唯一)ALL/ANY(一組數(shù)據(jù)的所有/其中的任何一個)AND/OR(邏輯與/或),ISNULL/ISNOTNULL,WHEREsalaryISNULL工資為空值。WHEREsalary=NULL工資中含有NULL字符。例:SELECTemp_id,emp_nameFROMemployee_tblWHEREemp_phoneISNULL,BETWEEN,WHEREsalaryBETWEEN200and300工資在200到300之間,包括200和300。INWHEREsalaryIN(200,300,400)工資必須是200,300,400之中的值。,LIKE,使用匹配符將一個值同其相似的值比較。匹配符包括:-代表一個字符。%代表多個字符。如:WHEREsalaryLIKE-00查找00作為后兩位數(shù)的值。WHEREsalaryLIKE200%查找200作為前三位數(shù)的值。,EXISTS,查詢在指定表中是否存在一行符合某種條件的數(shù)據(jù)。WHEREEXISTS(SELECTemployee_idFROMemployee_tblWHEREemployee_id=3333),UNIQUE,在特定的表中搜索每一行是否唯一。WHEREUNIQUE(SELECTsalaryFROMemployee_tblWHEREemployee_id=3333)測試滿足條件的工資是否有重復數(shù)據(jù)。,ALL/ANY,與某個數(shù)據(jù)集中所有數(shù)據(jù)/任何一個進行比較。WHEREsalaryall(SELECTsalaryFROMemployee_tblWHEREcity=INDIAN),AND/OR,AND連接的條件必須都滿足。OR連接的條件至少滿足一個。如:SELECT*FROMproducts_tblWHEREcost10andcost15,視圖的更新,對視圖的更新最終要轉(zhuǎn)換成對基本表的更新。視圖更新條件:1、視圖必須未涉及連接;2、視圖必須不包含GROUPBY子句;3、視圖不能包含任何組合函數(shù);4、不能使用DISTINCT子句;5、WHERE子句不能包含表的嵌套引用。,例:UPDATEemployeesummarySETpay_rate=18WHEREemp_id=52431875轉(zhuǎn)換成:UPDATEemployee_pay_tblSETpay_rate=18WHEREemp_id=52431875,刪除視圖,語法:DROPVIEWview_name例:DROPVIEWemployeesummary刪除了視圖,由此視圖導出的其他視圖也將自動被刪除若導出此視圖的基本表被刪除了,則此視圖也將自動刪除,視圖的優(yōu)點,視圖對于數(shù)據(jù)庫的重構(gòu)造提供了一定程度的邏輯獨立性。簡化了用戶觀點。視圖使不同的用戶能以不同的方式看待同一數(shù)據(jù)。視圖對機密數(shù)據(jù)提供了自動的安全保護功能。,三、索引的建立與刪除,語法:CREATEUNIQUECLUSTERINDEXindex_nameONtable_name(clo_name升/降序,.)ASC:升序,DESC:降序UNIQUE每一個索引只對應(yīng)唯一的數(shù)據(jù)記錄;CLUSTER聚簇索引,是指索引項的順序與表中記錄的物理順序一致的索引組織。,例:為學生-課程數(shù)據(jù)庫中的student,couse,sc3個表建立索引。其中student表按學號升序建立唯一索引;couse表按課程號升序建立唯一索引;sc表按學號升序和課程號降序建唯一索引。CREATEUNIQUEINDEXstusnoONstudent(sno)CREATEUNIQUEINDEXcoucnoONcouse(cno)CREATEUNIQUEINDEXscnoONsc(snoASC,cnoDESC),刪除索引,語法:DROPINDEX,例:刪除student表的stusname索引DROPINDEXstusname,四、數(shù)據(jù)控制語句,授權(quán)收回權(quán)限,數(shù)據(jù)控制包括:數(shù)據(jù)的安全性控制完整性控制并發(fā)控制和恢復,授權(quán):將對指定操作對象的指定操作權(quán)限授予指定的用戶。,GRANT,ONTO,WITHGRANTOPTION;,權(quán)限:SELECT,INSERT,UPDATE,DELETE;ALTER,INDEX;CREATE對象類型:TABLE,DATABASE對象:屬性列,視圖,基本表,數(shù)據(jù)庫,例1:把查詢student表權(quán)限授給用戶U1.GRANTSELECTONTABLEstudentTOU1;,例2:把查詢sc表權(quán)限授給所有用戶.GRANTSELECTONTABLESCTOPUBLIC;,例3:把對表SC的INSERT權(quán)限授給用戶U2,并允許他轉(zhuǎn)授.GRANTINSERTONTABLESCTOU

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論