




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
SQL介紹
第二章SQL的分類結(jié)構(gòu)化查詢語(yǔ)言SQL——StructuredQueryLanguageSQL分類數(shù)據(jù)定義語(yǔ)言(DDL):Create,Drop,Alter,Truncate數(shù)據(jù)操作語(yǔ)言(DML):Update,Insert,Delete、Select數(shù)據(jù)控制語(yǔ)言(DCL):GrantRevoke事務(wù)控制語(yǔ)言mitrollbacksavepoint創(chuàng)建表語(yǔ)句CREATE格式CREATETABLE<表名> (<列名><數(shù)據(jù)類型>[列級(jí)完整性約束條件] [,<列名><數(shù)據(jù)類型>[列級(jí)完整性約束條件]]… [,<表級(jí)完整性約束條件>]); CREATETABLEStudent (snonumber(5), Snamevarchar2(20), Sgendervarchar2(2));修改表語(yǔ)句ALTERTABLE<表名>[ADD<新列名><數(shù)據(jù)類型>[完整性約束]][DROP<完整性約束名>][MODIFY<列名><數(shù)據(jù)類型>]; 修改表的語(yǔ)句例子向表添加新的列,修改列或者刪除列添加表約束和刪除表約束添加新列altertable表名add列名列類型刪除列altertablestudropcolumnsex;修改列的類型altertablestumodifysexvarchar(15);添加主鍵altertablestuaddprimarykey(id);添加外鍵alter
tableTEST2
add
constraintforeign_key_Nameforeign
key(NAME)
referencesemp(EMPNO);刪除表語(yǔ)句DROPTABLE<表名>DROPTABLEStudent數(shù)據(jù)操縱語(yǔ)言數(shù)據(jù)操縱命令I(lǐng)NSERT插入數(shù)據(jù)UPDATE修改數(shù)據(jù)DELETE刪除數(shù)據(jù)SELECT查詢數(shù)據(jù)查詢數(shù)據(jù)語(yǔ)法:select[All|Distinct]<目標(biāo)列表達(dá)式>[,<目標(biāo)列表達(dá)式>]….from<表名或視圖名>[,<表名或視圖名>]…[where<條件表達(dá)式>][groupby<列名1>[having<條件表達(dá)式>]][orderby<列名2>[ASC|DESC]]查詢?nèi)苛蠸elect*fromEMP;
查詢選定列SELECTempno,ename,job,salfromemp;查詢經(jīng)過計(jì)算的列SELECTempno,ename,job,sal+100asraiseSalfromemp;查詢連接后的字符串Selectempno,ename||'isa'||jobasinfo,salfromemp;選擇表中的若干記錄Select*fromempwheresal>2000;
常用的查詢條件查詢條件謂詞比較=,>,<,>=,<=,!=,<>,NOT+上述比較運(yùn)算符確定范圍BETWEENAND,NOTBETWEENAND確定集合IN,NOTIN字符匹配LIKE,NOTLIKE空值ISNULL,ISNOTNULL多重條件AND,OR確定范圍SELECT*Fromempwheresalbetween2000and3000確定集合select*fromempwherejobin('MANAGER','ANALYST');字符匹配%代表任意長(zhǎng)度(長(zhǎng)度可以是0)的字符串_代表任意單個(gè)字符select*fromempwhereenamelike'_A%';使用聚集函數(shù)為了進(jìn)一步方便用戶,增強(qiáng)檢索功能,SQL提供了許多聚集函數(shù),主要有函數(shù)功能Count([Distinct|ALL]*)統(tǒng)計(jì)記錄個(gè)數(shù)Count([Distinct|ALL]<列名>)統(tǒng)計(jì)一列中值的個(gè)數(shù)SUM([Distinct|ALL]<列名>)計(jì)算一列的總和(必須是數(shù)值型)AVG([Distinct|ALL]<列名>)計(jì)算一列的平均值(必須是數(shù)值型)MAX([Distinct|ALL]<列名>)求一列中的最大值MIN([Distinct|ALL]<列名>)求一列中的最小值聚集函數(shù)例子對(duì)查詢結(jié)果分組GROUPBY子句將查詢結(jié)果表按某一列或多列值分組,值相等的為一組。分組查詢常用于統(tǒng)計(jì),比如說統(tǒng)計(jì)出每個(gè)班級(jí)的人數(shù),統(tǒng)計(jì)每個(gè)部門的平均工資等分組的例子2-1SELECTjob,avg(sal)fromempgroupbyjob;分組的例子2-2selectjob,count(*),avg(sal)fromempgroupbyjobhavingcount(*)>3;HAVING短語(yǔ)指定選擇組的條件,只有滿足條件(即記錄個(gè)數(shù)>3)的組才會(huì)被選出來WHERE子句與HAVING短語(yǔ)的區(qū)別在于作用的對(duì)象不同,WHERE子句作用于基本表或視圖,從中選擇滿足條件的記錄。HAVAING作用于組,從中選擇滿足條件的組對(duì)查詢結(jié)果排序用戶可以用Orderby子句對(duì)查詢結(jié)果按照一個(gè)或多個(gè)屬性列的升序(ASC)或降序(DESC)排序,缺省為升序Select*fromempwheredeptno=10orderbysaldesc;插入記錄INSERT語(yǔ)法 INSERTINTO<表名>[(<屬性列1>[,<屬性列2>…)]VALUES(<常量1>[,<常量2>]….)插入子查詢結(jié)果語(yǔ)法:INSERTINTO<表名>[<屬性列1>[,<屬性列2>…]子查詢插入記錄例子INSERTINTOStudentVALUES(‘95020’,‘曹操’,’男’,25)INSERTINTOStudent(Sno,name,sex)VALUES(‘95252’,’許三多’,’男’);INSERTINTOStudentSELECT*fromNew_Student修改數(shù)據(jù)語(yǔ)法UPDATE<表名>SET<列名>=<表達(dá)式>[,<列名>=<表達(dá)式>]…[WHERE<條件>];修改數(shù)據(jù)的例子UPDATEStudentSETSage=Sage+1;UPDATEStudentsetSage=22WHERESno=‘85001’;刪除數(shù)據(jù)語(yǔ)法DELETEFROM<表名>[WHERE<條件>]刪除數(shù)據(jù)的例子DELETEFROMStudentWhereSno=‘95019’;DELETEFROMStudent;Oracle默認(rèn)用戶只有用合法的用戶帳號(hào)才能訪問Oracle數(shù)據(jù)庫(kù)Oracle有幾個(gè)默認(rèn)的數(shù)據(jù)庫(kù)用戶
Oracle默認(rèn)用戶SYSSYSTEMSCOTT數(shù)據(jù)庫(kù)中所有數(shù)據(jù)字典表和視圖都存儲(chǔ)在SYS模式中。SYS用戶主要用來維護(hù)系統(tǒng)信息和管理實(shí)例。SYSTEM是默認(rèn)的系統(tǒng)管理員,該用戶擁有Oracle管理工具使用的內(nèi)部表和視圖。通常通過SYSTEM用戶管理數(shù)據(jù)庫(kù)用戶、權(quán)限和存儲(chǔ)等SCOTT用戶是Oracle數(shù)據(jù)庫(kù)的一個(gè)示范帳戶,在數(shù)據(jù)庫(kù)安裝時(shí)創(chuàng)建創(chuàng)建新用戶要連接到Oracle數(shù)據(jù)庫(kù),就需要?jiǎng)?chuàng)建一個(gè)用戶帳戶每個(gè)用戶都有一個(gè)默認(rèn)表空間和一個(gè)臨時(shí)表空間CREATEUSER命令用于創(chuàng)建新用戶CREATEUSER命令的語(yǔ)法是:CREATEUSERusernameIDENTIFIEDBYpassword[DEFAULTTABLESPACEtablespace][TEMPORARYTABLESPACEtablespace];CREATEUSERMARTINIDENTIFIEDBYmartinpwdDEFAULTTABLESPACEUSERSTEMPORARYTABLESPACETEMP;創(chuàng)建一個(gè)名稱為martin的用戶,其密碼為martinpwd更改和刪除用戶ALTERUSER命令可用于更改口令A(yù)LTERUSERMARTINIDENTIFIEDBYmartinpass;修改MARTIN用戶的密碼DROPUSER命令用于刪除用戶DROPUSERMARTINCASCADE;刪除MARTIN用戶模式授予權(quán)限3-1權(quán)限指的是執(zhí)行特定命令或訪問數(shù)據(jù)庫(kù)對(duì)象的權(quán)利權(quán)限有兩種類型,系統(tǒng)權(quán)限和對(duì)象權(quán)限系統(tǒng)權(quán)限允許用戶執(zhí)行某些數(shù)據(jù)庫(kù)操作,如創(chuàng)建表就是一個(gè)系統(tǒng)權(quán)限對(duì)象權(quán)限允許用戶對(duì)數(shù)據(jù)庫(kù)對(duì)象(如表、視圖、序列等)執(zhí)行特定操作角色是一組相關(guān)權(quán)限的組合,可以將權(quán)限授予角色,再把角色授予用戶,以簡(jiǎn)化權(quán)限管理。授予權(quán)限3-2GRANT命令可用于為用戶分配權(quán)限或角色GRANTCONNECTTOMARTIN;CONNECT角色允許用戶連接至數(shù)據(jù)庫(kù),并創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象GRANTRESOURCETOMARTIN;RESOURCE角色允許用戶使用數(shù)據(jù)庫(kù)中的存儲(chǔ)空間GRANTCREATESEQUENCETOMARTIN;此系統(tǒng)權(quán)限允許用戶在當(dāng)前模式中創(chuàng)建序列,此權(quán)限包含在CONNECT角色中對(duì)象授權(quán)Grant語(yǔ)句向用戶授予操作權(quán)限Grant<權(quán)限>[,<權(quán)限>]…[ON<對(duì)象類型><對(duì)象名>]TO<用戶>[,<用戶>]…[WITHGrantOption];將對(duì)指定操作對(duì)象的指定操作權(quán)限授予指定用戶。授予權(quán)限3-3授予用戶MARTIN操作TEST表對(duì)象的權(quán)限
GRANTSELECTONTESTTOMARTIN;允許用戶查詢TEST表的記錄GRANTUPDATEONTESTTOMARTIN;允許用戶更新TEST表中的記錄GRANTALL
ONTESTTOMARTIN;允許用戶插入、刪除、更新和查詢TEST表中的記錄事務(wù)所謂事務(wù)是用戶定義的一個(gè)數(shù)據(jù)庫(kù)操作序列,這些操作要么全做要么全不做,是一個(gè)不可分割的工作單位。例如,銀行的轉(zhuǎn)帳業(yè)務(wù),A帳戶向B帳號(hào)中轉(zhuǎn)500元。A帳號(hào)B帳號(hào)1.從A帳號(hào)中-500元2.向B帳號(hào)中+500元事務(wù)的特性ACID原子性(Atomicity):事務(wù)是數(shù)據(jù)庫(kù)的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做一致性(Consistency):事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致狀態(tài)。隔離性(Isolation):一個(gè)事務(wù)的執(zhí)行不能被其它事務(wù)干擾,即一個(gè)事務(wù)內(nèi)部操作及使用的數(shù)據(jù)對(duì)其它并發(fā)是隔離的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能互相干擾。持久性(Durability):指一個(gè)事務(wù)一旦提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就是永久性的。事務(wù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 哈爾濱電力職業(yè)技術(shù)學(xué)院《走向富足通過科技改變?nèi)祟愇磥怼?023-2024學(xué)年第二學(xué)期期末試卷
- 揚(yáng)州環(huán)境資源職業(yè)技術(shù)學(xué)院《大數(shù)據(jù)內(nèi)存計(jì)算》2023-2024學(xué)年第二學(xué)期期末試卷
- 青島城市學(xué)院《經(jīng)濟(jì)學(xué)通論》2023-2024學(xué)年第二學(xué)期期末試卷
- 長(zhǎng)春工程學(xué)院《近代儀器分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東郵電職業(yè)技術(shù)學(xué)院《價(jià)值觀教育專題研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧機(jī)電職業(yè)技術(shù)學(xué)院《婦女社會(huì)工作》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南交通工程學(xué)院《大學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 泰州2025年江蘇泰州興化市部分高中學(xué)校校園招聘教師22人筆試歷年參考題庫(kù)附帶答案詳解
- 湖南中醫(yī)藥高等??茖W(xué)?!吨袑W(xué)化學(xué)教學(xué)設(shè)計(jì)(含課程標(biāo)準(zhǔn)與教材研究)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湘西民族職業(yè)技術(shù)學(xué)院《自動(dòng)機(jī)械設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鄉(xiāng)村建設(shè)規(guī)劃許可培訓(xùn)
- 加氣站安全課件
- 北師大版二年級(jí)數(shù)學(xué)下冊(cè)各單元測(cè)試卷
- GB/T 45037-2024糧油機(jī)械扒谷機(jī)
- 品管圈PDCA改善案例-降低住院患者跌倒發(fā)生率
- 分布式計(jì)算平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)
- 團(tuán)聚體與土壤有機(jī)質(zhì)轉(zhuǎn)化-洞察分析
- 公務(wù)車輛定點(diǎn)加油服務(wù)投標(biāo)文件(技術(shù)方案)
- 膝關(guān)節(jié)鏡手術(shù)后康復(fù)
- 安徽工程大學(xué)《回歸分析》2023-2024學(xué)年第一學(xué)期期末試卷
- 人教版物理八年級(jí)下冊(cè) 專項(xiàng)訓(xùn)練卷 (一)力、運(yùn)動(dòng)和力(含答案)
評(píng)論
0/150
提交評(píng)論