freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

oracle數(shù)據(jù)庫及sql基礎(chǔ)-文庫吧

2024-10-03 18:20 本頁面


【正文】 on delete cascade 引用完整性約束 ?先建主表,后建子表 ?子表引用的必須是主表的主碼(或定義了unique約束的列)。 ?子表 dno的值必須是合法值 (主表值 ) ?當(dāng)刪除主表記錄時(shí),若子表中有對應(yīng)記錄,不能刪。 ?指定了 on delete cascade 連帶刪除。 CREATE TABLE sc (sno number(6), o char(3), grade number(3), primary key (sno,o) ) 。 CREATE TABLE … (… not null(列 1,列 2), unique(列 1,列 2) ) 。 表約束 CREATE TABLE student (… , foreign key(dno) references dep(dno) )。 CREATE TABLE emp ( eno char(3), ename char(6), sex char(2), age number(2), dno char(3), CHECK(sex=39。男 39。AND age BETWEEN 18 AND 60 OR sex=39。女 39。AND age BETWEEN 18 AND 55 ) ); 表約束 : 完整性約束的作用時(shí)間 create table student ( …) enable constraint e1 enable constraint e2 。 disable 表對象的修改與刪除 ALTER TABLE emp ADD( 列定義) MODIFY( ename char(10)) ADD( 表約束) DROP CONSTRAINT e4 ; DROP TABLE emp ; DML 語句 (DB寫語句) INSERT INTO emp VALUES(`e01`, `李宏 `, 32 ,…)。 UPDATE emp SET sal=sal* WHERE dno=`d01` ; DELETE FROM emp WHERE dno=`d01` ; 數(shù)據(jù)庫查詢 (1) 基本查詢 SELECT * FROM student WHERE sex = 39。男 39。 AND dno = 39。D0139。 。 ?查詢的結(jié)果仍可看成是一個(gè)關(guān)系,它由查出的記錄組成。 (2) 查詢語句中的投影操作 ?投影操作是從關(guān)系的屬性集中選擇屬性子集,即由關(guān)系的部分列組成一個(gè)新關(guān)系, SELECT sno , sname , dno FROM student。 (2) 查詢語句中的投影操作 SELECT sno stu_no , sname stu_ name , dno dept FROM student WHERE sex=‘男’ ; ?該語句輸出如下: stu_no stu_name dept 980001 張自立 d01 970020 李春生 d02 (2) 查詢語句中的投影操作 SELECT ename , sal*12 an_sal FROM emp 。 ?該語句輸出如下: ename an_sal 徐再興 9600 … … SELECT ename, sal*12 an_sal , 39。元 39。 RMB FROM emp 。 ?該語句輸出如下: ename an_sal RMB 徐再興 9600 元 … … (3) 查詢語句中的選擇操作- WHERE子句 ?選擇操作是從關(guān)系中選擇部分滿足條件的元組,其表示形式為: SELECT * FROM student WHERE dno=`d01`。 (3) 查詢語句中的選擇操作- WHERE子句 ?例:查詢 7 80兩年出生的女同學(xué)的名單: SELECT sname, birthday FROM student WHERE sex=39。女 39。 AND birthday BETWEEN 39。011月 7939。 AND 39。3112月 8039。; ?查詢 1980年以前出生的學(xué)生: SELECT * FROM student WHERE birthday 39。011月 198039。 ; SQL語句中的運(yùn)算符 ?算術(shù)運(yùn)算符:+,-, *, / ?邏輯運(yùn)算符:與 AND、或 OR, 非 NOT ?比較符:=, !=, , , =, = ?其他運(yùn)算符: IN, NOT IN, ANY, ALL 判斷是否是集合的成員。 ?BETWEEN … AND … 判斷列值是否滿足指定的區(qū)間 ?LIKE 匹配模式 _ % ?IS [NOT] NULL 測試空值 (3) 查詢語句中的選擇操作- WHERE子句 ? 在查詢條件中,可以使用集合運(yùn)算符(例如: IN) SELECT dname, tel FROM dep WHERE dname IN(`計(jì)算機(jī)系 `, `外語系 `, `中文系 `) ; 該表達(dá)式等同于 : dname=39。計(jì)算機(jī)系 39。 OR dname=39。外語系 39。 OR dname=39。中文系 39。 該表達(dá)式也等同于 : dname =ANY(`計(jì)算機(jī)系 `,`外語系 `,`中文系 `), ? 集合運(yùn)算符 NOT IN是 IN的反義詞, WHERE dname NOT IN(`計(jì)算機(jī)系 `, `外語系 `, `中文系 `) ; 該表達(dá)式等同于 : dname !=ALL(`計(jì)算機(jī)系 `,`外語系 `,`中文系 `), (3) 查詢語句中的選擇操作- WHERE子句 ?空值是表中分量常見的一種狀態(tài) ?查詢學(xué)號為 980001的同學(xué)正在學(xué)習(xí)的課程 : SELECT o FROM sc WHERE sno=980001 AND grade IS NULL; ?模糊匹配。匹配符有兩個(gè): _ 表示任意一個(gè)字符 % 表示任意個(gè)字符(包括 0個(gè)) ?例如,查詢姓王的同學(xué)信息; SELECT * FROM student WHERE sname LIKE 39。王% 39。 ; (4)查詢的排序輸出 - ORDER BY子句 ?查詢 c01課程的成績,并按成績由高到低的順序輸出: SELECT sno, grade (輸出學(xué)號和成績 ) FROM sc WHERE o=39。c0139。and grade IS NOT NULL ORDER BY grade DESC ; ?排序輸出的隱含順序是升序( ASC),如果要求按列值的降序輸出,需在列名后指定 DESC。 ? ORDER BY子句指定的排序列可以不止一個(gè),例如: SELECT * FROM student ORDER BY dep DESC, birthday ; (4)查詢的排序輸出 - ORDER BY子句 ?ORDER BY 子句除了用列名指定排序列外,還可以依據(jù) SELECT 子句中列的順序號排序,這對于某些列名不好指定的情況尤為有用。例如,查詢職工姓名及年工資,并按年工資的升序依次輸出: SELECT ename,sal*12 FROM emp ORDER BY 2 ; ?排序應(yīng)該是查詢語句的最后一步工作,是即將輸出之前的處理,所以排序子句一般也出現(xiàn)在查詢語句的最后。 (5) 多表查詢與連接操作( joins) 笛卡爾積操作將結(jié)果關(guān)系擴(kuò)展,如果笛卡爾積的兩關(guān)系元組數(shù)分別為 m和 n,那么結(jié)果關(guān)系的元組數(shù)為 m n, 而在處理中往往只是需要其中部分元組。 連接( Join)操作是 從笛卡爾積中選擇滿足條件的元組 。最常用的條件是 等值連接 Select * from student,dep where = dno student dep (5) 多表查詢與連接操作( joins) ?表之間的連接操作(通常是自然連接)體現(xiàn)在 WHERE子句中的連接條件。 ?例:查詢計(jì)算機(jī)系的學(xué)生信息 SELECT sno, sname, sex FROM student,dep WHERE = AND dname=39。計(jì)算機(jī)系 39。; (5) 多表查詢與連接操作( joins) ?查詢物理課不及格的學(xué)生名單(輸出學(xué)生的學(xué)號
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1