![OracleSQL語(yǔ)言基礎(chǔ)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/c123c222-59ff-41a4-99a9-3fb4a492d2b9/c123c222-59ff-41a4-99a9-3fb4a492d2b91.gif)
![OracleSQL語(yǔ)言基礎(chǔ)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/c123c222-59ff-41a4-99a9-3fb4a492d2b9/c123c222-59ff-41a4-99a9-3fb4a492d2b92.gif)
![OracleSQL語(yǔ)言基礎(chǔ)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/c123c222-59ff-41a4-99a9-3fb4a492d2b9/c123c222-59ff-41a4-99a9-3fb4a492d2b93.gif)
![OracleSQL語(yǔ)言基礎(chǔ)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/c123c222-59ff-41a4-99a9-3fb4a492d2b9/c123c222-59ff-41a4-99a9-3fb4a492d2b94.gif)
![OracleSQL語(yǔ)言基礎(chǔ)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/c123c222-59ff-41a4-99a9-3fb4a492d2b9/c123c222-59ff-41a4-99a9-3fb4a492d2b95.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、SQL語(yǔ)言基礎(chǔ)語(yǔ)言基礎(chǔ) 1. SQL簡(jiǎn)介簡(jiǎn)介 SQL語(yǔ)言是關(guān)系數(shù)據(jù)庫(kù)操作的基礎(chǔ)語(yǔ)言,將數(shù)據(jù)查詢(xún)、數(shù)據(jù)操縱、數(shù)據(jù)定義、事務(wù)控制、系統(tǒng)控制等功能集于一體,使得數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)人員、數(shù)據(jù)庫(kù)管理員等都可以通過(guò)SQL語(yǔ)言實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)和操作。 SQL語(yǔ)言可以分為:(1)數(shù)據(jù)定義語(yǔ)言(DDL)(2)數(shù)據(jù)操縱語(yǔ)言(DML)(3)數(shù)據(jù)查詢(xún)語(yǔ)言(DQL)(4)數(shù)據(jù)控制語(yǔ)言(DCL)1.高度的非過(guò)程化 在使用SQL語(yǔ)言操作數(shù)據(jù)庫(kù)時(shí),用戶(hù)只需要說(shuō)明“做什么”,而不需要說(shuō)明“怎么做”。用戶(hù)任務(wù)的實(shí)現(xiàn)對(duì)用戶(hù)而言是透明的,由系統(tǒng)自動(dòng)完成。這大大減輕了用戶(hù)的負(fù)擔(dān),同時(shí)降低了對(duì)用戶(hù)的技術(shù)要求。SQL語(yǔ)言的特點(diǎn)語(yǔ)言的特點(diǎn) 2
2、.面向集合的操作方式 SQL語(yǔ)言采取集合操作方式,不僅查詢(xún)結(jié)果可以是多條記錄的集合,而且一次插入、刪除、修改操作的對(duì)象也可以是多條記錄的集合。面向集合的操作方式極大地提高了對(duì)數(shù)據(jù)操作的效率。3.多種使用方式 SQL語(yǔ)言既是自含式語(yǔ)言,又是嵌入式語(yǔ)言。SQL語(yǔ)言可以直接 以命令方式與數(shù)據(jù)庫(kù)進(jìn)行交互,也可以嵌入其他的高級(jí)語(yǔ)言中使用。 2. SQL基本語(yǔ)法基本語(yǔ)法 通過(guò)通過(guò)SQL語(yǔ)句,程序員或數(shù)據(jù)庫(kù)管理員(語(yǔ)句,程序員或數(shù)據(jù)庫(kù)管理員(DBA)可以做如下的)可以做如下的主要工作:主要工作:(1)建立數(shù)據(jù)庫(kù)的表格,包括設(shè)置表格所可以使用之空間。)建立數(shù)據(jù)庫(kù)的表格,包括設(shè)置表格所可以使用之空間。(2)改變
3、數(shù)據(jù)庫(kù)系統(tǒng)環(huán)境設(shè)置。)改變數(shù)據(jù)庫(kù)系統(tǒng)環(huán)境設(shè)置。(3)針對(duì)某個(gè)數(shù)據(jù)庫(kù)或表格,授予用戶(hù)存取權(quán)限。)針對(duì)某個(gè)數(shù)據(jù)庫(kù)或表格,授予用戶(hù)存取權(quán)限。(4)對(duì)數(shù)據(jù)庫(kù)表格建立索引值。)對(duì)數(shù)據(jù)庫(kù)表格建立索引值。(5)修改數(shù)據(jù)庫(kù)表格結(jié)構(gòu)(新建、刪除或是修改表格字段)。)修改數(shù)據(jù)庫(kù)表格結(jié)構(gòu)(新建、刪除或是修改表格字段)。(6)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的新建。)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的新建。(7)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的刪除。)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的刪除。(8)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的修改。)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的修改。(9)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的查詢(xún)。)對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的查詢(xún)。SQL語(yǔ)言的語(yǔ)法結(jié)構(gòu)語(yǔ)言的語(yǔ)法結(jié)構(gòu)SQL語(yǔ)言是針對(duì)關(guān)系型數(shù)據(jù)庫(kù)所建立出來(lái)的語(yǔ)法
4、敘述,幾乎涵蓋了對(duì)數(shù)據(jù)庫(kù)的所有操作。SQL的語(yǔ)句不多,而且其語(yǔ)法也相對(duì)較簡(jiǎn)單。歸納起來(lái),共有六大類(lèi):1關(guān)鍵字:SQL的保留字,在語(yǔ)言中有特定的含義2標(biāo)識(shí)符:用于命名數(shù)據(jù)庫(kù)對(duì)象(表、列、索引、視圖等)的詞3運(yùn)算符:用于執(zhí)行程序代碼運(yùn)算4常量5函數(shù)6標(biāo)點(diǎn)符號(hào):一條SQL語(yǔ)句以分號(hào)(;)結(jié)束標(biāo)識(shí)符命名規(guī)則:標(biāo)識(shí)符命名規(guī)則:1.必須以字母開(kāi)頭2.可以包含字母、數(shù)字和下劃線(_)、美元符號(hào)($)和#3.不可以包含空格或特殊字符(如&、%或標(biāo)點(diǎn)符號(hào))4.不可以是保留關(guān)鍵字?jǐn)?shù)據(jù)類(lèi)型:數(shù)據(jù)類(lèi)型:1.字符類(lèi)型:char、varchar2、nchar、nvarchar2、long2.數(shù)值類(lèi)型:number
5、3.日期類(lèi)型:date、timestamp4.LOB類(lèi)型:clob、nclob、blob、bfile5.二進(jìn)制類(lèi)型:raw、long raw6.行類(lèi)型:rowid、urowid常用運(yùn)算符:常用運(yùn)算符:算數(shù)運(yùn)算:+,-,*,/ 關(guān)系運(yùn)算:=,=,=,!=確定范圍:BETWEEN AND,NOT BETWEEN AND確定集合:IN,NOT IN字符匹配:LIKE,NOT LIKE控制判斷:IS NULL,IS NOT NULL邏輯操作:NOT ,AND,OR 3.3.數(shù)據(jù)查詢(xún)語(yǔ)言(數(shù)據(jù)查詢(xún)語(yǔ)言(DQLDQL) SELECT 語(yǔ)句的格式SELECT *|distinctcolumn_name,ex
6、pressionFROM table_name ,.WHERE.GROUP BY.HAVING.ORDER BY. 基本查詢(xún)主要指對(duì)單個(gè)表或視圖進(jìn)行無(wú)條件查詢(xún)、有條件查詢(xún)和查詢(xún)排序等。(1)WHERE 子句SELECT * FROM empWHERE deptno=10;(查詢(xún)條件)(2)“*”,DISTINCT屬性詞用法 SELECT *|DISTINCT FROM table;(3)ORDER BY條件子句 SELECT * FROM tableWHERE deptno=10ORDER BY sal DESC;3.1 基本查詢(xún) 3.2 分組查詢(xún)分組查詢(xún)是指將數(shù)據(jù)進(jìn)行分組,以便對(duì)各個(gè)組進(jìn)行統(tǒng)
7、計(jì)分析。(1)GROUP BY 條件子句SELECT deptno,count(*),avg(sal)FROM empGROUP BY deptno;(2)HAVING 條件子句 SELECT deptno,count(*),avg(sal)FROM empGROUP BY deptnoHAVING avg(sal)1500; 連接查詢(xún)只指從多個(gè)表或者視圖中查詢(xún)信息。(1)交叉連接 select empno,ename,sal,dname from emp,dept;(2)內(nèi)連接 select table1.column,table2.column from table1 inner join
8、 table2 on condition;(3)外連接 select table1.column,table2.column from table1 left |right|full join table2 on condition;3.3 連接查詢(xún)3.4 子查詢(xún)子查詢(xún)是指嵌套在其他SQL語(yǔ)句中的SELECT語(yǔ)句。SELECT empno,ename,sal FROM empWHERE sal(SELECT sal FROM emp WHERE ename=7934); 3.5 層次查詢(xún)層次查詢(xún)能夠?qū)⒁粋€(gè)表中的數(shù)據(jù)按照記錄之間的聯(lián)系以樹(shù)狀結(jié)構(gòu)的形式顯示出來(lái)。SELECT empno,ename
9、,mgr FROM empSTART WITH empno=7839CONNECT BY PRIOR empno=mgr;合并查詢(xún)指將多個(gè)查詢(xún)的結(jié)果集合并。Select query_statement1UNION|INTERSECT|MINUSSelect query_statement1;3.6 合并查詢(xún)4.2 DELETE語(yǔ)句語(yǔ)句 4. 數(shù)據(jù)操縱語(yǔ)言(DML)4.3 UPDATE語(yǔ)句語(yǔ)句1INSERT語(yǔ)句格式INSERT語(yǔ)句用于往數(shù)據(jù)表里插入記錄。(1)同時(shí)插入多條記錄的語(yǔ)句格式為:INSERT INTO (target.field1,target.field2,)SELECT (sour
10、ce.field1,source.field2,)FROM tableexpression(2)插入單條記錄的語(yǔ)句格式為:INSERT INTO (target.field1,target.field2,.)VALUES(value1,value2,.)4.1 INSERT語(yǔ)句2注意事項(xiàng)(1)字符串類(lèi)型的字段值必須用單引號(hào)括起來(lái),例如:GOODDAY。(2)如果字段值里包含單引號(hào)需要進(jìn)行字符串轉(zhuǎn)換,把它替換成兩個(gè)單引號(hào) 。(3)字符串類(lèi)型的字段值超過(guò)定義的長(zhǎng)度會(huì)出錯(cuò),最好在插入前進(jìn)行長(zhǎng)度校驗(yàn)。(4)日期字段的字段值可以用當(dāng)前數(shù)據(jù)庫(kù)的系統(tǒng)時(shí)間SYSDATE,精確到秒。(5)INSERT時(shí)如果要用
11、到從1開(kāi)始自動(dòng)增長(zhǎng)的序列號(hào),應(yīng)該先建立一個(gè)序列號(hào)。 (6)在添加數(shù)據(jù)時(shí)可以使用轉(zhuǎn)換函數(shù)添加指定的數(shù)據(jù)類(lèi)型。 有to_char() to_date() to_number()1DELETE語(yǔ)句格式DELETE語(yǔ)句刪除數(shù)據(jù)表里的記錄。用DELETE語(yǔ)句刪除的記錄,無(wú)法再?gòu)?fù)原,所以條件設(shè)置一定要正確。DELETE語(yǔ)句格式為:DELETE tablenameFROM tableexpressionWHERE criteria4.2 DELETE語(yǔ)句2注意事項(xiàng)(1)刪除記錄并不能釋放Oracle里被占用的數(shù)據(jù)塊表空間。它只把那些被刪除的數(shù)據(jù)塊標(biāo)成unused。(2)如果確實(shí)要?jiǎng)h除一個(gè)大表里的全部記錄,可
12、以用TRUNCATE語(yǔ)句,它可以釋放占用的數(shù)據(jù)塊表空間,其語(yǔ)句格式為:TRUNCATE TABLE 表名;(3)此操作不可回退。 UPDATE 語(yǔ)句通過(guò)條件的限制來(lái)修改特定的數(shù)據(jù)。 UPDATE語(yǔ)句格式為: UPDATE table SET newvalue FROM tableexpression WHERE criteria; DML 語(yǔ)句對(duì)表都加上了行級(jí)鎖,確認(rèn)完成后,必須加上事物處理結(jié)束的語(yǔ)句COMMIT才能正式生效,否則改變不一定寫(xiě)入數(shù)據(jù)庫(kù)里。如果想撤回這些操作,可以用語(yǔ)句ROLLBACK復(fù)原。4.3 UPDATE語(yǔ)句5.2 ALTER語(yǔ)句語(yǔ)句 5.1 CREATE語(yǔ)句語(yǔ)句5.5.
13、數(shù)據(jù)定義語(yǔ)言數(shù)據(jù)定義語(yǔ)言(DDL)(DDL)5.3 DROP語(yǔ)句語(yǔ)句 5.4 TRUNCATE語(yǔ)句語(yǔ)句1表的建立 表是存儲(chǔ)用戶(hù)數(shù)據(jù)的基本結(jié)構(gòu)。 建立表主要指定義下列信息: 列定義 完整性約束5.1 CREATE語(yǔ)句(1)建立一個(gè)新表的語(yǔ)句格式可以利用CREATE TABLE語(yǔ)句,來(lái)建立一個(gè)全新的表,但前提是:數(shù)據(jù)庫(kù)必須已經(jīng)存在。語(yǔ)句格式為:CREATE TABLE table(field1 type(size)index1,field2 type(size)index2,.,nultifieldindex,.)constraint 約束名 primary key(列名)constraint 約
14、束名 primary key(列名)constraint 約束名 unique (列名)constraint 約束名 foreign key(列名) references 外鍵列constraint 約束名 check(檢查表達(dá)式)constraint 約束名 default (默認(rèn)值)n(2)注意事項(xiàng)n創(chuàng)建表時(shí)要把較小的不為空的字段放在前面,可能為空的字段放在后面。n創(chuàng)建表時(shí)可以用中文的字段名,但最好還是用英文的字段名。n創(chuàng)建表時(shí)可以給字段加上默認(rèn)值,例如DEFAULT SYSDATE。這樣每次插入和修改時(shí),不用程序操作這個(gè)字段都能得到動(dòng)作的時(shí)間。n創(chuàng)建表時(shí)可以給字段加上約束條件。例如不允許
15、重復(fù)UNIQUE,主鍵PRIMARY KEY。2表索引的建立 索引是一種數(shù)據(jù)庫(kù)對(duì)象 ,他是表和蔟相聯(lián)系的結(jié)構(gòu),能夠是與表相關(guān)的SQL語(yǔ)句執(zhí)行更迅速,能夠快速定位要查詢(xún)的信息,他對(duì)查詢(xún)結(jié)果每影響,但可以提高查詢(xún)速度,對(duì)于在表或聚集的索引列上的每一值將包含一項(xiàng),為行提供直接的快速存取。在下列情況下,Oracle可利用索引改進(jìn)性能:按指定的索引列的值查找行。按索引列的順序存取表。表索引的建立主要采用的是CREATE INDEX語(yǔ)句。這個(gè)命令是對(duì)一個(gè)已存在的表建立索引,語(yǔ)句格式為:CREATEUNIQUEINDEX index ON table(field1ASC|DESC,field2ASC|DES
16、C,.)3視圖的建立視圖是一個(gè)邏輯表,它允許操作者從其它表或視圖存取數(shù)據(jù),視圖本身不包含數(shù)據(jù)。視圖所基于的表稱(chēng)為基表。引入視圖有下列作用:提供附加的表安全級(jí),限制存取基表的行或/和列集合。隱藏?cái)?shù)據(jù)復(fù)雜性。為數(shù)據(jù)提供另一種觀點(diǎn)。促使Oracle的某些操作在包含視圖的數(shù)據(jù)庫(kù)上執(zhí)行,而不在另一個(gè)數(shù)據(jù)庫(kù)上執(zhí)行。建立視圖的語(yǔ)句格式為:CREATE VIEW view name() AS SELECT table1.field1,table2.field1 FROM table1,table2.;With read only1ALTER語(yǔ)句格式用ALTER語(yǔ)句,可以修改表、索引,或?qū)σ晥D的字段重新設(shè)計(jì)。語(yǔ)
17、句格式為:ALTER TABLE tableADD COLUMN field type(size)|CONSTRAINT multifiedindex|DROP COLUMN field|CONSTRAINT indexname5.2 ALTER語(yǔ)句2ALTER語(yǔ)句的具體用法(1)在表的后面增加一個(gè)字段,例如為: ALTER TABLE 表名 ADD (BOOK_SHU VARCHAR2(10) ) (2)修改表里字段的定義描述,例如為: ALTER TABLE 表名 MODIFY(BOOK_NAME“ NOT NULL)(3)給表里的字段加上約束條件,語(yǔ)句格式為: ALTER TABLE S
18、COTT.ZHOU1 ADD (CONSTRAINT ZHUJIAN PRIMARY KEY(book_name)修改表名稱(chēng): rename 舊表名 to 新表名n修改列的屬性時(shí),需要注意以下幾條: 1、可以增加列的寬度或數(shù)字的精度。 2、減少列的寬度時(shí),列的取值要大于列值范 圍。 3、當(dāng)數(shù)據(jù)類(lèi)型被修改時(shí),列值必須為空 使用DROP語(yǔ)句,可以刪除表,索引,視圖,同義詞,過(guò)程,函數(shù),數(shù)據(jù)庫(kù)鏈接等??梢曰謴?fù),DROP語(yǔ)句的格式為:DROP TABLE table|INDEX index ON table例如: drop table biao 5.3 DROP語(yǔ)句 使用TRUNCATE語(yǔ)句,可以清空表里的所有記錄,保留表的結(jié)構(gòu)。TRUNCATE語(yǔ)句的格式為:TRUNCATE table 表名;5.4 TRUNCATE語(yǔ)句6 6 數(shù)據(jù)控制語(yǔ)言(數(shù)據(jù)控制語(yǔ)言(DCLDCL)1. COMMIT語(yǔ)句語(yǔ)句2. ROLLBAC
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 1 Knowing me,knowing you Listening and speaking 說(shuō)課稿-2023-2024學(xué)年高一英語(yǔ)外研版(2019)必修第三冊(cè)
- Unit2 What is your hobby?Lesson 7(說(shuō)課稿)-2024-2025學(xué)年人教精通版英語(yǔ)六年級(jí)上冊(cè)001
- 2025合同模板股東協(xié)議 范本
- 25《憶讀書(shū)》說(shuō)課稿-2024-2025學(xué)年五年級(jí)上冊(cè)語(yǔ)文統(tǒng)編版
- 8空氣和我們的生活 說(shuō)課稿-2024-2025學(xué)年科學(xué)三年級(jí)上冊(cè)教科版
- 遼寧新風(fēng)系統(tǒng)施工方案
- 8 網(wǎng)絡(luò)新世界說(shuō)課稿-2024-2025學(xué)年道德與法治四年級(jí)上冊(cè)統(tǒng)編版
- 高空連廊除銹刷漆施工方案
- Unit 3 Asking the way(說(shuō)課稿)-2023-2024學(xué)年譯林版(三起)英語(yǔ)五年級(jí)下冊(cè)
- 修理廠與公司車(chē)合同范例
- 《工程測(cè)試技術(shù)》全套教學(xué)課件
- 自卸車(chē)司機(jī)實(shí)操培訓(xùn)考核表
- 教師個(gè)人基本信息登記表
- 中考現(xiàn)代文閱讀理解題精選及答案共20篇
- ESD測(cè)試作業(yè)指導(dǎo)書(shū)-防靜電手環(huán)
- 高頻變壓器的制作流程
- 春季開(kāi)學(xué)安全第一課PPT、中小學(xué)開(kāi)學(xué)第一課教育培訓(xùn)主題班會(huì)PPT模板
- JJG30-2012通用卡尺檢定規(guī)程
- 部編版人教版二年級(jí)上冊(cè)語(yǔ)文教材分析
- 艾賓浩斯遺忘曲線復(fù)習(xí)方法表格模板100天
- APR版制作流程
評(píng)論
0/150
提交評(píng)論