




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)庫(kù)原理與應(yīng)用數(shù)據(jù)庫(kù)原理與應(yīng)用(AccessAccess版)版)第第6 6章章 查詢的創(chuàng)建與使用查詢的創(chuàng)建與使用主要內(nèi)容主要內(nèi)容6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.2 計(jì)算查詢計(jì)算查詢6.3 參數(shù)查詢參數(shù)查詢6.4 交叉表查詢交叉表查詢6.5 操作查詢操作查詢6.6 SQL查詢查詢第第6 6章章 查詢的創(chuàng)建與使用查詢的創(chuàng)建與使用Access數(shù)據(jù)查詢主要有兩種作用:(1)通過(guò)查詢,可以實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的各種操作;(2)可以將設(shè)計(jì)好的查詢命名保存,就得到查詢對(duì)象。查詢對(duì)象的外在視圖與表類似,由于查詢可以對(duì)數(shù)據(jù)庫(kù)重新組織,這樣,查詢對(duì)象可以將數(shù)據(jù)庫(kù)以不同的形式呈現(xiàn)在不同的用戶眼中。第第6 6章
2、章 查詢的創(chuàng)建與使用查詢的創(chuàng)建與使用在Access中,查詢對(duì)象主要有五種類型:(1) 選擇查詢 可從一個(gè)或多個(gè)表中檢索出數(shù)據(jù),并且在可以更新記錄(有一些限制條件)的數(shù)據(jù)表中顯示結(jié)果;也可以使用選擇查詢來(lái)對(duì)記錄進(jìn)行分組,并且對(duì)記錄作總計(jì)、計(jì)數(shù)、平均值以及其他類型的總和計(jì)算。(2) 參數(shù)查詢 參數(shù)查詢可以在運(yùn)行時(shí)提示用戶輸入?yún)?shù)信息,并根據(jù)該信息執(zhí)行相關(guān)的查詢工作,如設(shè)定條件、將查詢控制在一定的范圍內(nèi)等。(3) 交叉表查詢 使用交叉表查詢可以計(jì)算并重新組織數(shù)據(jù)的結(jié)構(gòu),這樣可以更加方便地分析數(shù)據(jù)。第第6 6章章 查詢的創(chuàng)建與使用查詢的創(chuàng)建與使用(4) 操作查詢 使用操作查詢(也叫動(dòng)作查詢)可以通過(guò)查
3、詢的運(yùn)行對(duì)數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行改動(dòng),通常這樣可以大批量地更改和移動(dòng)數(shù)據(jù)。操作查詢主要有以下四種: 刪除查詢 更新查詢 追加查詢 生成表查詢(5) SQL查詢 SQL 查詢是用戶使用 SQL 語(yǔ)句創(chuàng)建的查詢。創(chuàng)建查詢的方法主要有查詢向?qū)Ш筒樵冊(cè)O(shè)計(jì)視圖。6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建 選擇查詢是指根據(jù)指定的查詢準(zhǔn)則,從一個(gè)或者多個(gè)表中獲取數(shù)據(jù)并顯示結(jié)果的一種最常見(jiàn)的查詢方式,并且在可以更新記錄的數(shù)據(jù)表中顯示查詢結(jié)果;也可以使用選擇查詢來(lái)對(duì)記錄進(jìn)行分組,并對(duì)記錄進(jìn)行總計(jì)、計(jì)數(shù)以及其他類型的累計(jì)計(jì)算。 6.1.1 6.1.1 單數(shù)據(jù)源查詢單數(shù)據(jù)源查詢單數(shù)據(jù)源查詢是指從單個(gè)數(shù)據(jù)表或已經(jīng)創(chuàng)建的
4、查詢中找出滿足條件的記錄,在實(shí)際生活中有著廣泛的應(yīng)用。任務(wù)實(shí)例任務(wù)實(shí)例6.1 6.1 使用查詢向?qū)д页鏊袌D書的“書名”、“作者”、“出版日期”及“ISBN”的記錄,查詢名為“圖書信息查詢”。6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建任務(wù)分析任務(wù)分析查詢方式:查詢向?qū)?shù)據(jù)源:圖書信息表輸出字段:“書名”、“作者”、“出版日期”、“ISBN”查詢名:圖書信息查詢6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建任務(wù)實(shí)例任務(wù)實(shí)例6.2 6.2 使用查詢?cè)O(shè)計(jì)視圖“查詢讀者信息表中相關(guān)信息,顯示“讀者姓名”、“讀者編號(hào)”、“聯(lián)系電話”,并按出生日期的先后順序?qū)⒉樵兘Y(jié)果進(jìn)行排序,查詢名為“讀者信息查詢”。任
5、務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:讀者信息表輸出字段:“讀者姓名”、“讀者編號(hào)”、“聯(lián)系電話”排序方式:出生日期、升序查詢名:讀者信息查詢6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建任務(wù)實(shí)例任務(wù)實(shí)例6.3 6.3 使用查詢?cè)O(shè)計(jì)視圖查詢“索書號(hào)”為“A002”圖書的“館藏地”、“架位號(hào)”及“流通狀態(tài)”的記錄,查詢名為“圖書收藏信息查詢”。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書館藏表輸出字段:“館藏地”、“架位號(hào)”、“流通狀態(tài)”查詢條件:“索書號(hào)”為“A002”查詢名:圖書收藏信息查詢6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1.2 6.1.2 查詢條件查詢條件 查詢條件是運(yùn)算
6、符、常量、字段值、函數(shù)以及字段名和屬性等任意組合。(1 1)運(yùn)算符)運(yùn)算符 運(yùn)算符是構(gòu)成查詢條件的基本元素,表達(dá)式中常用的運(yùn)算符包括算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、連接運(yùn)算符、邏輯運(yùn)算符和特殊運(yùn)算符等,具體見(jiàn)表6.1、表6.2、表6.3、表6.4、表6.5。6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建(2) (2) 函數(shù)函數(shù)函數(shù)是由Access提供的具有固定意義的式子,只要給定參數(shù),就會(huì)返回一個(gè)值。6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建 表6.7 字符函數(shù)6.1 6
7、.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建(3) (3) 表達(dá)式表達(dá)式表達(dá)式 表達(dá)式是運(yùn)算符、常數(shù)、函數(shù)和字段名稱、控件和屬性的任意組合,其計(jì)算結(jié)果為單個(gè)值(4) (4) 常量常量 數(shù)字型常量 如123、89.5等,直接鍵入數(shù)字,Access默認(rèn)其為數(shù)字型常量。 文本型常量 在能接受任意類型的編輯框中,加了文本常量定界符(ANSI-92 中的單引號(hào)“”)的輸入值,如“”計(jì)算機(jī)”,被視為常量。 日期型常量 在數(shù)字表達(dá)式的兩邊加了日期常量定界符(#)或ANSI-92 中的單引
8、號(hào)()(如#1970-1-1#)被視為日期型常量。同樣,在數(shù)據(jù)表視圖中輸入日期型常量時(shí),也不用加定界符。 是/否型常量 True、False、Yes、No等,當(dāng)其不被定義為文本型常量時(shí),Access默認(rèn)其為是/否型常量。6.1 6.1 選擇查詢的創(chuàng)建選擇查詢的創(chuàng)建(5) (5) 通配符通配符常見(jiàn)的通配符見(jiàn)表6.11。6.2 6.2 計(jì)算查詢計(jì)算查詢?cè)诓樵冎袌?zhí)行計(jì)算,可以使用兩種方法:(1)使用預(yù)定義計(jì)算預(yù)定義計(jì)算是指“總計(jì)”計(jì)算,用于對(duì)查詢中的記錄進(jìn)行總和、平均值、最大值、最小值、計(jì)數(shù)、標(biāo)準(zhǔn)偏差或方差計(jì)算。(2)使用自定義計(jì)算自定義計(jì)算,對(duì)一個(gè)或多個(gè)字段中的記錄進(jìn)行數(shù)值、日期和文本計(jì)算。6.2
9、.1 6.2.1 總計(jì)查詢總計(jì)查詢總計(jì)查詢就是在成組的記錄中完成一定的計(jì)算功能,在查詢?cè)O(shè)計(jì)視圖中的“總計(jì)”行實(shí)現(xiàn)。6.2 6.2 計(jì)算查詢計(jì)算查詢?nèi)蝿?wù)實(shí)例任務(wù)實(shí)例6.5 6.5 利用設(shè)計(jì)視圖求類別碼為“D”圖書的平均價(jià)格,顯示字段為平均價(jià)格,查詢名為“D類圖書均價(jià)查詢”。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書信息表輸出字段:平均價(jià)格查詢條件:“類別碼”為“D”聚合函數(shù):AVG()查詢名:D類圖書均價(jià)查詢6.2 6.2 計(jì)算查詢計(jì)算查詢6.2.2 6.2.2 分組總計(jì)查詢分組總計(jì)查詢分組總計(jì)就是對(duì)一個(gè)字段進(jìn)行分組,然后再總計(jì),分組字段的“總計(jì)”行設(shè)置成“分組”。任務(wù)實(shí)例任務(wù)實(shí)例6.6 6
10、.6 創(chuàng)建一個(gè)名為“價(jià)格總計(jì)”的查詢,統(tǒng)計(jì)各類別圖書價(jià)格的總和,查詢結(jié)果中包括“類別碼”和“價(jià)格總和”兩項(xiàng)信息。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書信息表輸出字段:“類別碼”、“價(jià)格總和”聚合函數(shù):合計(jì)查詢名:價(jià)格總計(jì)6.2 6.2 計(jì)算查詢計(jì)算查詢6.2.3 6.2.3 添加計(jì)算字段查詢添加計(jì)算字段查詢前面查詢的字段都是在數(shù)據(jù)表中存在的字段,但是有時(shí)候我們需要查詢某個(gè)字段在數(shù)據(jù)表中不存在,那么就得用添加計(jì)算字段查詢。任務(wù)實(shí)例任務(wù)實(shí)例6.7 6.7 創(chuàng)建一個(gè)名為“借書歸還查詢,查找還書日期在2014年10月1日前借書人的讀者編號(hào)、借閱編號(hào)、圖書條碼、借閱天數(shù)等信息。任務(wù)分析任務(wù)分析查
11、詢方式:查詢視圖數(shù)據(jù)源:圖書借閱表輸出字段:讀者編號(hào)、借閱編號(hào)、圖書條碼、借閱天數(shù)新字段:借閱天數(shù)=歸還時(shí)間-借出時(shí)間條件:歸還時(shí)間2014-10-1查詢名:借書歸還查詢6.3 6.3 參數(shù)查詢參數(shù)查詢 參數(shù)查詢是在查詢過(guò)程中,條件不唯一的情況使用的查詢方式。主要有兩種類型:?jiǎn)螀?shù)查詢和多參數(shù)查詢。參數(shù)查詢注意的事項(xiàng)如下: (1)參數(shù)查詢可以應(yīng)用于選擇查詢、生成表查詢、追加查詢等查詢中。(2) 使用兩個(gè)或多個(gè)參數(shù):在“條件”單元格中輸入一個(gè)表達(dá)式,并在方括號(hào)中輸入相應(yīng)的提示;每次運(yùn)行該查詢時(shí),系統(tǒng)彈出一個(gè)輸入對(duì)話框,以指定輸入值的范圍。(3) 使用帶有通配符的參數(shù):若要提示輸入一個(gè)或多個(gè)搜索字
12、符,然后查找以指定的字符開(kāi)頭或包含這些字符的所有記錄,可以創(chuàng)建一個(gè)使用操作符LIKE和通配符(*)的參數(shù)查詢。6.3 6.3 參數(shù)查詢參數(shù)查詢6.3.1 6.3.1 單參數(shù)查詢單參數(shù)查詢 單參數(shù)查詢就是在字段中指定一個(gè)參數(shù),在執(zhí)行參數(shù)查詢的時(shí)候,用戶再輸入一個(gè)參數(shù)值.為了在運(yùn)行時(shí)讓系統(tǒng)出現(xiàn)對(duì)話框,務(wù)必在條件中使用 符號(hào)。 任務(wù)實(shí)例任務(wù)實(shí)例6.8 6.8 建立一個(gè)參數(shù)查詢,按類別碼檢索圖書信息,參數(shù)提示“請(qǐng)輸入圖書類別碼”,輸出字段為:“書名”、“作者”、“價(jià)格”、“出版社編號(hào)”及“出版日期”。任務(wù)分析任務(wù)分析(1) 查詢方式:查詢視圖(2) 數(shù)據(jù)源:圖書信息表(3) 輸出字段:“書名”、“作者
13、”、“價(jià)格”、“出版社編號(hào)”、“出版日期”(4) 參數(shù)字段:“類別碼”(5) 查詢名:按類別碼檢索圖書信息6.3 6.3 參數(shù)查詢參數(shù)查詢6.3.2 6.3.2 多參數(shù)查詢多參數(shù)查詢 單參數(shù)查詢就是在字段中指定一個(gè)參數(shù),在執(zhí)行參數(shù)查詢的時(shí)候,用戶再輸入一個(gè)參數(shù)值.為了在運(yùn)行時(shí)讓系統(tǒng)出現(xiàn)對(duì)話框,務(wù)必在條件中使用 符號(hào)。 任務(wù)實(shí)例任務(wù)實(shí)例6.9 6.9 建立一個(gè)參數(shù)查詢,按價(jià)格及出版時(shí)間范圍檢索圖書信息,參數(shù)提示“請(qǐng)輸入?yún)?shù)范圍值”,輸出圖書信息表的所有字段。任務(wù)分析任務(wù)分析 查詢方式:查詢視圖 數(shù)據(jù)源:圖書信息表 輸出字段:所有字段 參數(shù)字段:“請(qǐng)輸入價(jià)格范圍”及“請(qǐng)輸入出版時(shí)間范圍” 查詢名:
14、按價(jià)格及出版時(shí)間范圍檢索圖書信息6.4 6.4 交叉表查詢交叉表查詢所謂的交叉表查詢,就是將來(lái)源于某一個(gè)表(數(shù)據(jù)表或者查詢表)中的字段進(jìn)行分組,一組在數(shù)據(jù)表的左側(cè),一組在數(shù)據(jù)表的上部,行與列交叉處顯示某個(gè)字段的計(jì)算值,因此交叉表查詢輸出至少有三個(gè)字段:行標(biāo)、列表和值。使用交叉表查詢可以計(jì)算并重新組織數(shù)據(jù)的結(jié)構(gòu),以方便分析數(shù)據(jù);交叉表類似Excel中的數(shù)據(jù)透視表,可顯示表中某個(gè)字段的匯總值,包括總和、計(jì)數(shù)和平均等。6.4 6.4 交叉表查詢交叉表查詢?nèi)蝿?wù)實(shí)例任務(wù)實(shí)例6.10 6.10 利用“交叉表查詢向?qū)А辈樵兠總€(gè)讀者的借書情況和借書次數(shù),行標(biāo)題為“讀者編號(hào)”,列標(biāo)題為“圖書條碼”,按“借出日期
15、”字段計(jì)數(shù)。任務(wù)分析任務(wù)分析查詢方式:查詢向?qū)?shù)據(jù)源:圖書借閱表使用字段:行標(biāo)題-讀者編號(hào),列表題-圖書條碼,值-借出時(shí)間總計(jì)函數(shù):計(jì)數(shù)(Count)查詢名:查詢每個(gè)讀者的借書情況和借書次數(shù)6.4 6.4 交叉表查詢交叉表查詢?nèi)蝿?wù)實(shí)例任務(wù)實(shí)例6.116.11利用“設(shè)計(jì)視圖”建立一個(gè)交叉表查詢,查詢每一類別碼每年出版書的數(shù)目,行標(biāo)題為“類別碼”,列標(biāo)題為“出版年份”,按“數(shù)量”字段求總計(jì)。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書借閱表使用字段:行標(biāo)題-類別碼,列表題-出版年份,值-數(shù)量總計(jì)函數(shù):Sum(合計(jì))查詢名:查詢不同類別碼每年出版書的數(shù)目6.5 6.5 操作查詢操作查詢操作查詢是在
16、一個(gè)操作中更改許多記錄的查詢,主要包括生成表、刪除、更新、追加查詢。簡(jiǎn)單查詢、交叉表查詢、參數(shù)查詢都是從表中選擇需要的數(shù)據(jù),并不能對(duì)表中數(shù)據(jù)進(jìn)行修改。而操作查詢除了從表中選擇數(shù)據(jù)外,還能對(duì)表中的記錄進(jìn)行修改,由于是對(duì)數(shù)據(jù)的修改,為了避免進(jìn)行誤修改操作,每一個(gè)操作查詢的圖標(biāo)后面都有感嘆號(hào),使用時(shí)一定要注意!6.5.1 6.5.1 生成表查詢生成表查詢生成表查詢可以從一個(gè)或多個(gè)表的數(shù)據(jù)中產(chǎn)生新的數(shù)據(jù)表,生成的表可以作為數(shù)據(jù)備份,也可作為新的數(shù)據(jù)集,簡(jiǎn)單地說(shuō),生成表查詢所產(chǎn)生的結(jié)果可以生成一個(gè)新的表。6.5 6.5 操作查詢操作查詢?nèi)蝿?wù)實(shí)例任務(wù)實(shí)例6.12 6.12 創(chuàng)建一個(gè)名為“查詢圖書類別信息情
17、況”的生成表查詢,將“類別碼為A”或“類別碼為C”兩個(gè)不同類型碼的的圖書情況(包括類別碼、書名、作者、價(jià)格)保存到一個(gè)新表中,新表的名稱為“類別碼A和C圖書信息登記表”。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書信息表使用字段:類別碼、書名、作者、價(jià)格查詢條件:“類別碼”為“A或C”生成表名:類別碼A和C圖書信息登記表查詢名:查詢圖書類別信息情況6.5 6.5 操作查詢操作查詢6.5.2 6.5.2 更新查詢更新查詢更新查詢可以對(duì)一個(gè)或多個(gè)表中的一組記錄做批量的更改,它比通過(guò)鍵盤逐一修改表記錄更加準(zhǔn)確、快捷,但需要被修改的數(shù)據(jù)有規(guī)律。任務(wù)實(shí)例任務(wù)實(shí)例6.13 6.13 創(chuàng)建一個(gè)名為“圖書表
18、更新”的查詢,將“價(jià)格”少于50圖書的數(shù)量增加5本。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書信息表使用字段:價(jià)格、數(shù)量查詢條件:“價(jià)格”少于50更新方式:數(shù)量+5查詢名:圖書表更新6.5 6.5 操作查詢操作查詢6.5.3 6.5.3 追加查詢追加查詢追加查詢可以將一個(gè)或多個(gè)表中的一組記錄添加到另一個(gè)或多個(gè)表的末尾。任務(wù)實(shí)例任務(wù)實(shí)例6.14 6.14 先用生成表查詢方法生成一個(gè)新的表(數(shù)據(jù)源為圖書信息表所有字段),表名叫“生成查詢新表”。創(chuàng)建一個(gè)名為“圖書追加”的查詢,將圖書信息表中“類別碼”為D的記錄追加到“生成查詢新表”中。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書信息表使用字段
19、:全部查詢條件:“類別碼”為D 追加到的新表:生成查詢新表查詢名:“類別碼”為D的圖書信息追加到“生成查詢新表”6.5 6.5 操作查詢操作查詢6.5.4 6.5.4 刪除查詢刪除查詢刪除查詢可以對(duì)一個(gè)或多個(gè)表中的一組記錄做批量的刪除,如從學(xué)生表中刪除所有已經(jīng)畢業(yè)的學(xué)生。這種刪除操作一旦執(zhí)行,刪除掉的數(shù)據(jù)將無(wú)法恢復(fù),所以應(yīng)慎用。任務(wù)實(shí)例任務(wù)實(shí)例6.14 6.14 將圖書信息表中“類別碼”為C的記錄刪除,查詢名為“刪除圖書信息表中類別碼為C的記錄”。任務(wù)分析任務(wù)分析查詢方式:查詢視圖數(shù)據(jù)源:圖書信息表刪除條件:類別碼為C查詢名:“刪除圖書信息表中類別碼為C的記錄”6.6 SQL6.6 SQL查詢
20、查詢6.6.1 SQL6.6.1 SQL概述概述 SQL( Structured Query Language)意為結(jié)構(gòu)化查詢語(yǔ)言,可用于定義、查詢、更新、管理關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)。SQL是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言,是集數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制功能于一身的功能完善的數(shù)據(jù)庫(kù)語(yǔ)言。目前,SQL仍處于不斷發(fā)展過(guò)程中。 SQL提出于1974年。IBM公司的System R中率先實(shí)現(xiàn)SQL。1986年10月美國(guó)國(guó)家標(biāo)準(zhǔn)局(ANSI)批準(zhǔn)將SQL作為關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言的美國(guó)標(biāo)準(zhǔn),并發(fā)布了ANSI SQL標(biāo)準(zhǔn)文本(SQL-86)。1987年,國(guó)際標(biāo)準(zhǔn)化組織(ISO)通過(guò)了這一標(biāo)準(zhǔn)。1989年發(fā)布SQL-89,199
21、2年發(fā)布SQL-92(也稱SQL2)。1997年發(fā)布SQL3。 各數(shù)據(jù)庫(kù)廠家推出的關(guān)系型DBMS都支持SQL,其基本內(nèi)容、命令和格式是一致的。掌握SQL對(duì)使用關(guān)系數(shù)據(jù)庫(kù)非常重要。6.6 SQL6.6 SQL查詢查詢 SQL語(yǔ)言,包括定義定義數(shù)據(jù)庫(kù)和表結(jié)構(gòu)、錄入數(shù)據(jù)及建立數(shù)據(jù)庫(kù)、查詢查詢、更新、維護(hù)更新、維護(hù)、數(shù)據(jù)庫(kù)重構(gòu)重構(gòu)、數(shù)據(jù)庫(kù)安全性控制數(shù)據(jù)庫(kù)安全性控制等一系列操作的要求。根據(jù)功能可分為: (1) 數(shù)據(jù)定義語(yǔ)言DDL(Data Definition Language) 在數(shù)據(jù)庫(kù)系統(tǒng)中,每一個(gè)數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)中的表、視圖和索引等都是數(shù)據(jù)庫(kù)對(duì)象。要建立和刪除一個(gè)數(shù)據(jù)庫(kù)對(duì)象,都可以通過(guò)SQL語(yǔ)言來(lái)完
22、成。DDL包括CREATE、ALTER和DROP等。 (2) 數(shù)據(jù)操縱語(yǔ)言DML(Data Manipulation Language) DML是指用來(lái)添加、修改和刪除數(shù)據(jù)庫(kù)中數(shù)據(jù)的語(yǔ)句,包括INSERT(插入)、DELETE(刪除)和UPDATE(更新)等。6.6 SQL6.6 SQL查詢查詢 (3) 數(shù)據(jù)查詢語(yǔ)言DQL(Data Query Language) 查詢是數(shù)據(jù)庫(kù)的基本功能,查詢操作通過(guò)SQL數(shù)據(jù)查詢語(yǔ)言來(lái)實(shí)現(xiàn),例如,用SELECT查詢表中的內(nèi)容。 (4) 數(shù)據(jù)控制語(yǔ)言DCL(Data Control Language) SQL可以實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的安全性和完整性控制。一般用來(lái)控制用
23、戶對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限的。由GRANT(授權(quán)),REVOTE(回收)命令組成。6.6 SQL6.6 SQL查詢查詢 6.6.2 6.6.2 數(shù)據(jù)定義數(shù)據(jù)定義 數(shù)據(jù)定義語(yǔ)言由CREATE, DROP, ALTERCREATE, DROP, ALTER等3個(gè)命令組成。 (1 1)表的創(chuàng)建)表的創(chuàng)建 定義基本表語(yǔ)句格式為: create table 表名 (列名 數(shù)據(jù)類型 default 缺省值 not null ,列名 數(shù)據(jù)類型 default 缺省值 not null ,primary key(列名 ,列名 ) ,foreign key (列名 ,列名 ) references 表名 (列名 ,列
24、名 ) ,check(條件)) 6.6 SQL6.6 SQL查詢查詢(2 2)表的修改)表的修改 修改表的基本語(yǔ)法如下: ALTER TABLE 表名 ADD 列名 數(shù)據(jù)類型 PRIMARY KEY | CONSTRAIN FOREIGN KEY (列名) REFERENCES 關(guān)聯(lián)表名(關(guān)聯(lián)列名) DROP CONSTRAINT 約束名稱 | COLUMN 列名 說(shuō)明; ADD子句 :增加列或完整性約束條件 DROP 子句:刪除完整性約束條件6.6 SQL6.6 SQL查詢查詢 (3) (3) 表的刪除表的刪除 刪除基本表語(yǔ)句格式: DROP TABLE 表名;注意: 刪除基本表后,基本表的
25、定義、表中數(shù)據(jù)、索引都被刪除。6.6 SQL6.6 SQL查詢查詢(4 4)索引)索引 建立索引語(yǔ)句格式:CREATE UNIQUE INDEX 索引名ON 表名 (列名 ASC/DESC , 列名ASC/DESC)說(shuō)明: UNIQUE:惟一性索引,不允許表中不同的行在索引列上取相同值。若已有相同值存在,則系統(tǒng)給出相關(guān)信息,不建此索引。系統(tǒng)并拒絕違背惟一性的插入、更新。ASC/DESC 選項(xiàng)指定索引排序升序或降序,不指定順序,索引按升序排列。刪除索引語(yǔ)句格式: DROP INDEX 索引名 ON 表名 說(shuō)明:刪除主索引即刪除了主鍵6.6 SQL6.6 SQL查詢查詢 任務(wù)實(shí)例任務(wù)實(shí)例 6.16
26、 6.16 利用SQL語(yǔ)句實(shí)現(xiàn)下面數(shù)據(jù)的數(shù)據(jù)定義功能(1)創(chuàng)建“books表”,查詢名為“創(chuàng)建books表數(shù)據(jù)定義”,表的結(jié)構(gòu)為:bid,整型,非空,主鍵;bname,字符型(20);author,字符型(20);liberid,字符型(20),非空,唯一; publish: 字符型(50);price,數(shù)值型; isfree, 字符(1)。 (2)在表“books”中添加字段“是否在館”,類型為字符,查詢名為“添加是否在館字段數(shù)據(jù)查詢”。 (3)修改表“books”中的是否在館字段類型為“是/否”類型,查詢名為“修改字段”。 (4) 刪除表“books”中 “是否在館”字段,查詢名為“刪除是
27、否在館字段”。6.6 SQL6.6 SQL查詢查詢?nèi)蝿?wù)分析任務(wù)分析 方法:使用SQL數(shù)據(jù)庫(kù)定義語(yǔ)句 目的:學(xué)會(huì)創(chuàng)建表、修改和刪除表字段 相關(guān)SQL語(yǔ)句:Create table、Alter table 查詢名:創(chuàng)建books表數(shù)據(jù)定義、添加是否在館字段數(shù)據(jù)查詢、修改字段、刪除是否在館字段6.6 SQL6.6 SQL查詢查詢 任務(wù)解決過(guò)程任務(wù)解決過(guò)程(1)創(chuàng)建表 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “SQL特定查詢”下的數(shù)據(jù)定義命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.70. 保存及運(yùn)行。在保存對(duì)話框中輸入名“創(chuàng)建books表數(shù)據(jù)定義”,單擊
28、運(yùn)行,在數(shù)據(jù)庫(kù)窗口中能夠看到新建立的表。6.6 SQL6.6 SQL查詢查詢(2)添加字段 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “SQL特定查詢”下的“數(shù)據(jù)定義”命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.71 保存及運(yùn)行。在保存對(duì)話框中輸入名“添加是否在館字段數(shù)據(jù)查詢”,單擊運(yùn)行,books中可以看到表發(fā)生的變化。6.6 SQL6.6 SQL查詢查詢(3)修改字段 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “SQL特定查詢”下的“數(shù)據(jù)定義”命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.72 保存及
29、運(yùn)行。在保存對(duì)話框中輸入名“修改字段價(jià)格類型范圍”,單擊運(yùn)行,books中可以看到表發(fā)生的變化。6.6 SQL6.6 SQL查詢查詢(4)刪除字段 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “SQL特定查詢”下的“數(shù)據(jù)定義”命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.73 保存及運(yùn)行。在保存對(duì)話框中輸入名“刪除是否在館字段”,單擊運(yùn)行,books中可以看到表發(fā)生的變化。6.6 SQL6.6 SQL查詢查詢6.6.36.6.3操縱定義操縱定義數(shù)據(jù)操作語(yǔ)句主要是實(shí)現(xiàn)對(duì)表的添加記錄、修改記錄及刪除記錄。(1 1)插入記錄)插入記錄 INSERT語(yǔ)句用于向
30、數(shù)據(jù)表或視圖中插入一行數(shù)據(jù)。其基本格式如下:INSERT INTO 表或視圖名稱(列名表) VALUES(數(shù)據(jù)值)其中,“列名表”是可選項(xiàng),指定要添加數(shù)據(jù)的列,當(dāng)有多列時(shí),列名稱之間用逗號(hào)分隔;“數(shù)據(jù)值”指定要添加的數(shù)據(jù)的具體值。列名的排序次序不一定要和表定義時(shí)的次序一致,但當(dāng)指定列名表時(shí),后面數(shù)據(jù)值的次序必須和列名表中的列名次序一致,個(gè)數(shù)相等,數(shù)據(jù)類型一一對(duì)應(yīng)。6.6 SQL6.6 SQL查詢查詢?cè)谑褂肐NSERT語(yǔ)句插入數(shù)據(jù)時(shí)應(yīng)注意以下幾點(diǎn): 必須用逗號(hào)將各個(gè)數(shù)據(jù)項(xiàng)分隔,字符型和日期型數(shù)據(jù)要用單引號(hào)括起來(lái)。 若INTO子句中沒(méi)有指定列名,則新插入的記錄必須在每個(gè)列上均有值,且VALUES子
31、句中值的順序次序要和表中各列的排列次序一致。 將VALUES子句中的值按照INTO子句中指定列名的次序插入到表中。 對(duì)于INTO子句中沒(méi)有出現(xiàn)的列,則新插入的記錄在這些列上取空值。6.6 SQL6.6 SQL查詢查詢(2 2)更新記錄)更新記錄 UPDATE語(yǔ)句用于修改數(shù)據(jù)表或視圖中特定記錄或列的數(shù)據(jù)。其基本格式如下:UPDATE 表或視圖名稱SET 列名1=數(shù)據(jù)值1,nWHERE 條件其中,SET子句給出要修改的列及其修改后的數(shù)據(jù)值;WHERE子句指定要修改的行應(yīng)當(dāng)滿足的條件,當(dāng)WHERE子句省略時(shí),則修改表中所有行。6.6 SQL6.6 SQL查詢查詢 (3 3)刪除記錄)刪除記錄 DEL
32、ETE語(yǔ)句用于刪除表或視圖中一行或多行記錄。其基本格式如下:DELETE 表或視圖名稱 WHERE 條件其中,WHERE子句指定要?jiǎng)h除的行應(yīng)當(dāng)滿足的條件,當(dāng)WHERE子句省略時(shí),則刪除表中所有行。6.6 SQL6.6 SQL查詢查詢 任務(wù)實(shí)例任務(wù)實(shí)例 6.17 6.17 利用SQL語(yǔ)句實(shí)現(xiàn)下面數(shù)據(jù)查詢功能 (1) 利用SQL語(yǔ)句,向任務(wù)實(shí)例6.16 建立的表中插入一條記錄,插入的新紀(jì)錄見(jiàn)表6.12,查詢名為“添加新記錄”。6.6 SQL6.6 SQL查詢查詢?nèi)蝿?wù)解決過(guò)程任務(wù)解決過(guò)程(1 1)插入一條新記錄)插入一條新記錄 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “S
33、QL特定查詢”下的“數(shù)據(jù)定義”命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.74,在保存對(duì)話框中輸入名“添加新記錄”。6.6 SQL6.6 SQL查詢查詢(2)將圖書信息表中書名為哲學(xué)的數(shù)量改為6,查詢名為“修改哲學(xué)書本的數(shù)量”。任務(wù)解決過(guò)程任務(wù)解決過(guò)程 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “SQL特定查詢”下的“數(shù)據(jù)定義”命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.75,在保存對(duì)話框中輸入名“修改哲學(xué)書本的數(shù)量”。6.6 SQL6.6 SQL查詢查詢(3)將出版社信息表中,出版社名稱為“中華書局“的記錄刪除,查詢名為“刪除中華書局記錄”。任務(wù)解決過(guò)程任務(wù)解決過(guò)程 使用“在設(shè)計(jì)視圖中創(chuàng)建查詢”命令,關(guān)閉顯示表對(duì)話框,右擊鼠標(biāo),選擇 “SQL特定查詢”下的“數(shù)據(jù)定義”命令。 輸入SQL語(yǔ)句,在查詢框中輸入相應(yīng)的SQL語(yǔ)句,如圖6.76,在保存對(duì)話框中輸入名“刪除中華書局記錄”。6.6 SQL6.6 SQL查詢查詢6.6.4 6.6.4 數(shù)據(jù)查詢數(shù)據(jù)查詢數(shù)據(jù)庫(kù)查詢是數(shù)據(jù)庫(kù)的核心操作,SQL語(yǔ)言提供了SELECT語(yǔ)句進(jìn)行數(shù)據(jù)查詢。該語(yǔ)句的功能強(qiáng),變化形式較多。SELECT查詢語(yǔ)句格式如下:SELECTSELECT DISTINCT , , (查詢的結(jié)果的目標(biāo)列名表)FROM FROM , , (要操作的關(guān)系
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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àn)質(zhì)量報(bào)告范文
- 施工人員個(gè)人半年計(jì)劃
- 二零二五家庭房產(chǎn)分配與共有權(quán)轉(zhuǎn)讓及子女贍養(yǎng)協(xié)議
- 二零二五年度房屋無(wú)償贈(zèng)與及環(huán)保改造合同
- 二零二五年度可再生能源電工員工合作協(xié)議
- 二零二五年度房屋買賣及室內(nèi)空氣凈化服務(wù)合同
- 二零二五年度公司管理人員健康管理與聘用合同
- 2025年度輔導(dǎo)班家長(zhǎng)學(xué)生國(guó)際視野拓展協(xié)議
- 2025年度物流合同賬戶變更補(bǔ)充協(xié)議
- 二零二五年度個(gè)人與企業(yè)民間借貸合同模板
- 子宮內(nèi)膜癌教學(xué)查房
- 預(yù)防深靜脈血栓VTE持續(xù)改進(jìn)QCC品管圈PDCA案例3例
- 水環(huán)境綜合治理服務(wù)方案(技術(shù)標(biāo))
- 【原創(chuàng)】頭腦特工隊(duì)開(kāi)的那些心理學(xué)腦洞
- 美甲藝術(shù)全套教學(xué)課件
- 高等數(shù)學(xué)上冊(cè)目錄同濟(jì)第七版
- 中國(guó)古代餐具
- 電動(dòng)執(zhí)行機(jī)構(gòu)安裝施工工藝標(biāo)準(zhǔn)
- 施工日志模板
- 粗原料氣的凈化-二氧化碳的脫除(合成氨生產(chǎn))
- Agilent7820A氣相色譜儀操作規(guī)程知識(shí)講解
評(píng)論
0/150
提交評(píng)論