專轉(zhuǎn)本計(jì)算機(jī) 第6章6.2 信息系統(tǒng)與數(shù)據(jù)庫new_第1頁
專轉(zhuǎn)本計(jì)算機(jī) 第6章6.2 信息系統(tǒng)與數(shù)據(jù)庫new_第2頁
專轉(zhuǎn)本計(jì)算機(jī) 第6章6.2 信息系統(tǒng)與數(shù)據(jù)庫new_第3頁
專轉(zhuǎn)本計(jì)算機(jī) 第6章6.2 信息系統(tǒng)與數(shù)據(jù)庫new_第4頁
專轉(zhuǎn)本計(jì)算機(jī) 第6章6.2 信息系統(tǒng)與數(shù)據(jù)庫new_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型(操作操作)n 在關(guān)系數(shù)據(jù)庫中,通??梢远x一些操作來通過已在關(guān)系數(shù)據(jù)庫中,通常可以定義一些操作來通過已知的關(guān)系知的關(guān)系(二維表二維表)創(chuàng)建新的關(guān)系創(chuàng)建新的關(guān)系(二維表二維表)。最常用的關(guān)系。最常用的關(guān)系操作有:操作有:n n 并并 插入插入n 交交 更新更新n 差差 刪除刪除n 笛卡爾積笛卡爾積 選擇選擇n 除除 連接連接n 投影投影專門的關(guān)系操作專門的關(guān)系操作傳統(tǒng)集合的關(guān)系操作傳統(tǒng)集合的關(guān)系操作2第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型(操作操作)n舉例用例舉例用例(5張二維表張二維表):SNAMEGRADE錢欣75張進(jìn)

2、元62張華68胡平平79周亮80SNAMEGRADE王寧100錢欣75顧永華90黃進(jìn)82胡平平79周亮80SC1:60-80分成績(jī)表分成績(jī)表SC2:70-100分成績(jī)表分成績(jī)表 SNO CNO GRADE A041 CC112 92 A041 ME234 92.5 A041 MS211 90 C005 CC112 84.5 C005 CS202 82 M038 ME234 85 R098 CS202 75 R098 MS211 70.5 SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1

3、987-6-30 1.75 C008 王寧 計(jì)算機(jī) 女 1986-8-20 1.62 M038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988-10-20 1.65 R098 錢欣 管理工程 男 1986-5-16 1.8 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 學(xué)生登記表(S)學(xué)生選課成績(jī)表(SC)課程開設(shè)表(C)3第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (傳統(tǒng)集合的關(guān)系操作傳統(tǒng)集合的關(guān)系操作)n并并n 并操作是一個(gè)二元操作。

4、它要求參與操作的兩個(gè)關(guān)系有相同的關(guān)并操作是一個(gè)二元操作。它要求參與操作的兩個(gè)關(guān)系有相同的關(guān)系模式。其作用是將兩個(gè)關(guān)系組合成一個(gè)新的關(guān)系。根據(jù)集合論的系模式。其作用是將兩個(gè)關(guān)系組合成一個(gè)新的關(guān)系。根據(jù)集合論的定義,并操作創(chuàng)建的新關(guān)系中的每一個(gè)元組或者屬于第一個(gè)關(guān)系、定義,并操作創(chuàng)建的新關(guān)系中的每一個(gè)元組或者屬于第一個(gè)關(guān)系、或者屬于第二個(gè)關(guān)系,或者在兩個(gè)關(guān)系中皆有。或者屬于第二個(gè)關(guān)系,或者在兩個(gè)關(guān)系中皆有。 SNAME GRADE 錢欣 75 張進(jìn)元 62 張華 68 胡平平 79 周亮 80 王寧 100 顧永華 90 黃進(jìn) 82 并并并并SNAME GRADE 錢欣 75 張進(jìn)元 62 張華

5、68 胡平平 79 周亮 80 SNAME GRADE 王寧 100 錢欣 75 顧永華 90 黃進(jìn) 82 胡平平 79 周亮 80 SC1SC2結(jié)果關(guān)系表示結(jié)果關(guān)系表示選課程學(xué)生的選課程學(xué)生的“60100分成分成績(jī)表績(jī)表”4第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (傳統(tǒng)集合的關(guān)系操作傳統(tǒng)集合的關(guān)系操作)n交交n 交操作也是一個(gè)二元操作。它對(duì)兩個(gè)具有相同關(guān)系模交操作也是一個(gè)二元操作。它對(duì)兩個(gè)具有相同關(guān)系模n 式的關(guān)系進(jìn)行操作,創(chuàng)建一個(gè)新關(guān)系。根據(jù)集合論的定義,式的關(guān)系進(jìn)行操作,創(chuàng)建一個(gè)新關(guān)系。根據(jù)集合論的定義,n交操作所創(chuàng)建新關(guān)系中的每一個(gè)元組必須是兩個(gè)原關(guān)系中交操作所創(chuàng)建新關(guān)

6、系中的每一個(gè)元組必須是兩個(gè)原關(guān)系中n共有的成員。共有的成員。 SNAME GRADE 錢欣 75 胡平平 79 周亮 80 交交交交SNAME GRADE 錢欣 75 張進(jìn)元 62 張華 68 胡平平 79 周亮 80 SNAME GRADE 王寧 100 錢欣 75 顧永華 90 黃進(jìn) 82 胡平平 79 周亮 80 SC1SC2結(jié)果表示選課結(jié)果表示選課學(xué)生學(xué)生“70分分80分成績(jī)分成績(jī)表表”。5第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (傳統(tǒng)集合的關(guān)系操作傳統(tǒng)集合的關(guān)系操作)n.差差 差操作也是一個(gè)二元操作。它應(yīng)用于具有相同關(guān)系模式的兩差操作也是一個(gè)二元操作。它應(yīng)用于具有相同

7、關(guān)系模式的兩個(gè)關(guān)系。生成新關(guān)系中的元組是存在于第一個(gè)關(guān)系而不存在于個(gè)關(guān)系。生成新關(guān)系中的元組是存在于第一個(gè)關(guān)系而不存在于第二個(gè)關(guān)系中的元組。第二個(gè)關(guān)系中的元組。 例如,關(guān)系例如,關(guān)系SC1與關(guān)系與關(guān)系SC2進(jìn)行差操作進(jìn)行差操作:差差差差SNAME GRADE 錢欣 75 張進(jìn)元 62 張華 68 胡平平 79 周亮 80 SNAME GRADE 王寧 100 錢欣 75 顧永華 90 黃進(jìn) 82 胡平平 79 周亮 80 SNAME GRADE 張進(jìn)元 62 張華 68 SC1SC2結(jié)果關(guān)系包括結(jié)果關(guān)系包括那些在那些在SC1表表中而不在中而不在SC2表中的成績(jī)信表中的成績(jī)信息,即息,即“60

8、69分成績(jī)表分成績(jī)表” 6第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (傳統(tǒng)集合的關(guān)系操作傳統(tǒng)集合的關(guān)系操作)差差 (續(xù)續(xù)) 在集合操作中在集合操作中,“并并”和和“交交”具有交具有交換換律的性律的性質(zhì)質(zhì),而而“差差”操作操作沒沒有有交換律的性質(zhì)交換律的性質(zhì). 例如,關(guān)系例如,關(guān)系SC2與關(guān)系與關(guān)系SC1進(jìn)行差操作進(jìn)行差操作:結(jié)果關(guān)系包括結(jié)果關(guān)系包括那些在那些在SC2表表中而不在中而不在SC1表中的成績(jī)信表中的成績(jī)信息,即息,即“81 100分成績(jī)表分成績(jī)表” SC2SC1差差SC1SC2=SC2SC1SC1SC2=SC2SC1SC1SC2SC2SC17第6章 信息系統(tǒng)與數(shù)據(jù)庫(1

9、)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (專門的關(guān)系操作專門的關(guān)系操作)n插入插入n 插入操作是一種一元操作。它應(yīng)用于一個(gè)關(guān)系,其操插入操作是一種一元操作。它應(yīng)用于一個(gè)關(guān)系,其操作是在關(guān)系中插入新的元組(或另一個(gè)具有相同模式的作是在關(guān)系中插入新的元組(或另一個(gè)具有相同模式的關(guān)系)關(guān)系).n 例如例如:在課程開設(shè)表(在課程開設(shè)表(C)中插入一個(gè)新的課程信息)中插入一個(gè)新的課程信息 n (CW101,論文寫作論文寫作,30,春春)。)。插入插入插入插入(CW101,論文寫作,30,春)CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控

10、制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 CW101 論文寫作 30 春 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 C C8第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (專門的關(guān)系操作專門的關(guān)系操作)n刪除刪除n 刪除操作為一元操作。它根據(jù)要求刪去表中相應(yīng)的元?jiǎng)h除操作為一元操作。它根據(jù)要求刪去表中相應(yīng)的元組。組。n 例如例如:從課程表(從課程表(C)中刪除課程)中刪除課程CC11

11、2。刪除刪除刪除刪除CNO CNAME LHOUR SEMESTER CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 C C9第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (專門的關(guān)系操作專門的關(guān)系操作)n更改更改n 更改操作也是一種一元操作,它應(yīng)用于一個(gè)關(guān)系。用更改操作也是一種一元操作,它應(yīng)用于一個(gè)關(guān)

12、系。用來改變關(guān)系中指定元組中的部分屬性值。來改變關(guān)系中指定元組中的部分屬性值。n 例如例如:課程開設(shè)表課程開設(shè)表(C)中的課程中的課程ME234元組的元組的LHOUR值由值由“40”改為改為“30”,SEMESTER值由值由“秋秋”改為改為“春春”。 更新更新更新更新CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103

13、控制工程 60 春 ME234 數(shù)學(xué)分析 30 春 MS211 人工智能 60 秋 C C10第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (專門的關(guān)系操作專門的關(guān)系操作)n選擇選擇n 選擇操作是一元操作。它應(yīng)用于一個(gè)關(guān)系并產(chǎn)生另一個(gè)新選擇操作是一元操作。它應(yīng)用于一個(gè)關(guān)系并產(chǎn)生另一個(gè)新關(guān)系。新關(guān)系中的元組(行)是原關(guān)系中元組的子集。選擇操關(guān)系。新關(guān)系中的元組(行)是原關(guān)系中元組的子集。選擇操作根據(jù)要求從原先關(guān)系中選擇部分元組。結(jié)果關(guān)系中的屬性作根據(jù)要求從原先關(guān)系中選擇部分元組。結(jié)果關(guān)系中的屬性(列)與原關(guān)系相同(保持不變)。(列)與原關(guān)系相同(保持不變)。n 例如例如:從學(xué)生登記表從

14、學(xué)生登記表(S)中,選出性別為中,選出性別為“男男”的學(xué)生元組,的學(xué)生元組,組成一個(gè)新關(guān)系組成一個(gè)新關(guān)系“男學(xué)生登記表男學(xué)生登記表”。SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 C008 王寧 計(jì)算機(jī) 女 1986-8-20 1.62 M038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988-10-20 1.65 R098 錢欣 管理工程 男 1986-5-16 1.8 選擇選擇選擇選擇SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明

15、 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 R098 錢欣 管理工程 男 1986-5-16 1.8 S S11第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (專門的關(guān)系操作專門的關(guān)系操作)n投影投影n 是一元操作,它作用于一個(gè)關(guān)系并產(chǎn)生另一個(gè)新關(guān)系。新是一元操作,它作用于一個(gè)關(guān)系并產(chǎn)生另一個(gè)新關(guān)系。新關(guān)系中的屬性(列)是原關(guān)系中屬性的子集。在一般情況下,關(guān)系中的屬性(列)是原關(guān)系中屬性的子集。在一般情況下,雖然新關(guān)系中的元組屬性減少了,但其元組(行)的數(shù)量與原雖然新關(guān)系中的元組屬性減少了,但其元組(行)的數(shù)量與原關(guān)系保持不變

16、。關(guān)系保持不變。n 例如例如:需要了解學(xué)生選課情況而不關(guān)心其成績(jī)時(shí),可對(duì)學(xué)生需要了解學(xué)生選課情況而不關(guān)心其成績(jī)時(shí),可對(duì)學(xué)生選課成績(jī)表(選課成績(jī)表(SC)進(jìn)行相關(guān)的投影操作)進(jìn)行相關(guān)的投影操作. n。投影投影投影投影SNO CNO GRADE A041 CC112 92 A041 ME234 92.5 A041 MS211 90 C005 CC112 84.5 C005 CS202 82 M038 ME234 85 R098 CS202 75 R098 MS211 70.5 SNO CNO A041 CC112 A041 ME234 A041 MS211 C005 CC112 C005 CS20

17、2 M038 ME234 R098 CS202 R098 MS211 SCSC其結(jié)果的每個(gè)元組其結(jié)果的每個(gè)元組僅包括學(xué)(僅包括學(xué)(SNO) 課程號(hào)(課程號(hào)(CNO) 兩個(gè)屬性兩個(gè)屬性12第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型 (專門的關(guān)系操作專門的關(guān)系操作)n連接連接n 是一個(gè)二元操作。它基于共有屬性把兩個(gè)關(guān)系組合起來。是一個(gè)二元操作。它基于共有屬性把兩個(gè)關(guān)系組合起來。連接操作比較復(fù)雜并有較多的變化。連接操作比較復(fù)雜并有較多的變化。n 例如例如:學(xué)生登記表(學(xué)生登記表(S)和學(xué)生選課成績(jī)表()和學(xué)生選課成績(jī)表(SC)的連接)的連接,生成一生成一個(gè)信息更全面的關(guān)系個(gè)信息更全面的關(guān)

18、系.連接連接連接連接SNO CNO GRADE A041 CC112 92 A041 ME234 92.5 A041 MS211 90 C005 CC112 84.5 C005 CS202 82 M038 ME234 85 R098 CS202 75 R098 MS211 70.5 SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 C008 王寧 計(jì)算機(jī) 女 1986-8-20 1.62 M038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988-10-20 1.65 R098

19、 錢欣 管理工程 男 1986-5-16 1.8 SNO SNAME DEPART SEX DDATE HEIGHT CNO GRADE A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 CC112 92 A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 ME234 92.5 A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 MS211 90 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 CC112 84.5 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 CS202 82 M038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988-10-20 1.65 ME

20、234 85 R098 錢欣 管理工程 男 1986-5-16 1.8 CS202 75 R098 錢欣 管理工程 男 1986-5-16 1.8 MS211 70.5 S SSCSC對(duì)于已選課程的學(xué)生而言,結(jié)果關(guān)系對(duì)于已選課程的學(xué)生而言,結(jié)果關(guān)系包含包含SC表原來的信息,并增加了該學(xué)表原來的信息,并增加了該學(xué)生選修課程號(hào)(生選修課程號(hào)(CNO)和成績(jī))和成績(jī)(GRADE)。)。13第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn 數(shù)據(jù)庫語言數(shù)據(jù)庫語言n 以上討論的關(guān)系操作,比較直觀地說明了其對(duì)二維以上討論的關(guān)系操作,比較直觀地說明了其對(duì)二維表運(yùn)算的含意表運(yùn)算的含意(數(shù)學(xué)上對(duì)

21、關(guān)系操作的抽象描述是數(shù)學(xué)上對(duì)關(guān)系操作的抽象描述是“關(guān)系代關(guān)系代數(shù)數(shù)”)。在此基礎(chǔ)上,關(guān)系數(shù)據(jù)庫管理系統(tǒng)必須配置與此。在此基礎(chǔ)上,關(guān)系數(shù)據(jù)庫管理系統(tǒng)必須配置與此相應(yīng)的語言,使用戶可以對(duì)數(shù)據(jù)庫進(jìn)行各式各樣的操作,相應(yīng)的語言,使用戶可以對(duì)數(shù)據(jù)庫進(jìn)行各式各樣的操作,這就構(gòu)成了用戶和數(shù)據(jù)庫的接口。由于這就構(gòu)成了用戶和數(shù)據(jù)庫的接口。由于DBMS所提供的所提供的語言一般局限于對(duì)數(shù)據(jù)庫的操作,不同于計(jì)算機(jī)的程序語言一般局限于對(duì)數(shù)據(jù)庫的操作,不同于計(jì)算機(jī)的程序設(shè)計(jì)語言,因而稱它為設(shè)計(jì)語言,因而稱它為數(shù)據(jù)庫語言數(shù)據(jù)庫語言. DB數(shù)據(jù)庫語言數(shù)據(jù)庫語言程序程序用戶用戶14第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)

22、系數(shù)據(jù)庫語言SQLn 關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQL特點(diǎn)特點(diǎn)n 是一是一種種“非非過過程程語語言言”n 體現(xiàn)關(guān)系模型在結(jié)構(gòu)體現(xiàn)關(guān)系模型在結(jié)構(gòu), ,完整性和操作方面的特征完整性和操作方面的特征n 有命令和嵌入程序兩種使用方式有命令和嵌入程序兩種使用方式n 功能齊全功能齊全,簡(jiǎn)潔易學(xué)簡(jiǎn)潔易學(xué),使用方便使用方便n 為主流為主流DBMSDBMS產(chǎn)品所支持產(chǎn)品所支持用戶只要指出用戶只要指出“做什做什么么”,而而“如何做如何做”的的過程由過程由DBMS完成完成.命令式命令式:直接用語句操作直接用語句操作嵌入式嵌入式:將語句嵌入程序?qū)⒄Z句嵌入程序ORACLE,MS-SQL Server,Sybase D

23、B2,(Access,VFP有接口有接口)15第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn 關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQL 3級(jí)體系結(jié)構(gòu)級(jí)體系結(jié)構(gòu) 視圖 V1 視圖 Vp 基本表 B1 基本表 B2 基本表 B3 基本表 Bm 存儲(chǔ)文件 S1 存儲(chǔ)文件 S2 存儲(chǔ)文件 S3 存儲(chǔ)文件 Sq 用戶 1 用戶 2 用戶 n 用戶 3 用戶看到的關(guān)系模式用戶看到的關(guān)系模式主要是視圖主要是視圖系統(tǒng)的全局關(guān)系模系統(tǒng)的全局關(guān)系模式是基本表式是基本表系統(tǒng)的存儲(chǔ)結(jié)構(gòu)是系統(tǒng)的存儲(chǔ)結(jié)構(gòu)是文件文件16第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn SQL數(shù)據(jù)定義語言數(shù)據(jù)

24、定義語言DDLn 作為建立數(shù)據(jù)庫最重要的一步,根據(jù)關(guān)系模式定義所需的基本表,作為建立數(shù)據(jù)庫最重要的一步,根據(jù)關(guān)系模式定義所需的基本表,SQL語句表示為:語句表示為:n n其中其中:n 表示可含有該子句,也可為空表示可含有該子句,也可為空.n 基本表名字基本表名字.n 每個(gè)基本表可以由一個(gè)或多個(gè)列組成。每個(gè)基本表可以由一個(gè)或多個(gè)列組成。n 定義基本表時(shí)要指明每個(gè)列的類型和長(zhǎng)度,同時(shí)還可定義基本表時(shí)要指明每個(gè)列的類型和長(zhǎng)度,同時(shí)還可n 以定義與該表有關(guān)的完整性約束條件,以定義與該表有關(guān)的完整性約束條件,CREATE TABLE (列名數(shù)據(jù)類型完整性約束條件,(列名數(shù)據(jù)類型完整性約束條件,)17第6

25、章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLnDDL例例: n 按照關(guān)系模式按照關(guān)系模式S,定義學(xué)生基本表的,定義學(xué)生基本表的SQL語句語句:S SN NO OS SN NA AM ME ED DE EP PA AR RT TS SE EX XB BD DA AT TE EH HE EI IG GH HT T執(zhí)行語句后,在數(shù)據(jù)庫建立執(zhí)行語句后,在數(shù)據(jù)庫建立一個(gè)學(xué)生表一個(gè)學(xué)生表S的結(jié)構(gòu)的結(jié)構(gòu) CREATE TABLE S (SNO CHAR(4) , (類型為定長(zhǎng)字符串)(類型為定長(zhǎng)字符串) SNAME VARCHAR(8)(類型為變長(zhǎng)字符串,串長(zhǎng)為)(類型為變長(zhǎng)字符串,串長(zhǎng)為8

26、) DEPART VARCHAR(12),), SEX CHAR(2) BDATE DATE, (類型為日期型)(類型為日期型) HEIGHT DEC(5,2), (類型為(類型為5位十進(jìn)制數(shù),小數(shù)點(diǎn)后位十進(jìn)制數(shù),小數(shù)點(diǎn)后2位)位) PRIMARY KEY(SNO);(指明);(指明SNO為為S的主鍵)的主鍵)18第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn SQL的數(shù)據(jù)查詢的數(shù)據(jù)查詢n 查詢是數(shù)據(jù)庫的核心操作。查詢是數(shù)據(jù)庫的核心操作。SQL提供提供SELECT語句語句,具有靈具有靈活的使用方式和極強(qiáng)查詢的功能。關(guān)系操作中最常用的是活的使用方式和極強(qiáng)查詢的功能。關(guān)系操作中

27、最常用的是“投投影、選擇和連接影、選擇和連接”,都體現(xiàn)在都體現(xiàn)在SELECT語句中語句中:n SELECT A1,A2,An n FROM R1,R2,Rmn WHERE Fn SELECT語句語義為:將語句語義為:將FROM子句所指出的子句所指出的R(基本表或視圖基本表或視圖)進(jìn)行連接,從中選取滿足進(jìn)行連接,從中選取滿足WHERE子句中條件子句中條件F的行(元組),最后根的行(元組),最后根據(jù)據(jù)SELECT子句給出的子句給出的A(列名列名)將查詢結(jié)果表輸出。將查詢結(jié)果表輸出。指出目標(biāo)表的列名指出目標(biāo)表的列名,相應(yīng)于相應(yīng)于“投影投影”指出基本表或視圖指出基本表或視圖,相應(yīng)于相應(yīng)于“連接連接”F

28、為為“選擇選擇”操作的條件操作的條件19第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn單表查詢單表查詢n 從指定的一個(gè)表中找出符合條件的元組從指定的一個(gè)表中找出符合條件的元組.n 例如,查詢所有男學(xué)生名的情況例如,查詢所有男學(xué)生名的情況.n SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 C008 王寧 計(jì)算機(jī) 女 1986-8-20 1.62 M038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988-10-20 1.65 R098 錢欣 管理工程 男

29、1986-5-16 1.8 選擇選擇選擇選擇SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 R098 錢欣 管理工程 男 1986-5-16 1.8 S SSELECT * FROM S WHERE SEX男男;20第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLSNAMEDEPARTCNAMEGRADE張雷計(jì)算機(jī)軟件工程84.5張雷計(jì)算機(jī)數(shù)據(jù)庫82周光明自動(dòng)控制軟件工程92周光明自動(dòng)控制數(shù)學(xué)分析92.5周光明自動(dòng)控制人工智能90錢欣管理工程

30、數(shù)據(jù)庫75錢欣管理工程人工智能70.5連接查詢連接查詢 一個(gè)查詢同時(shí)涉及兩個(gè)以上的表,稱連接查詢。是關(guān)系數(shù)據(jù)庫一個(gè)查詢同時(shí)涉及兩個(gè)以上的表,稱連接查詢。是關(guān)系數(shù)據(jù)庫中最主要的查詢。例如,查詢每個(gè)男學(xué)生及其選修課程的情況。要中最主要的查詢。例如,查詢每個(gè)男學(xué)生及其選修課程的情況。要求列出學(xué)生名,系別,選修課程名及成績(jī)。求列出學(xué)生名,系別,選修課程名及成績(jī)。SELECT SNANE,DEPART,CNAME,GRADE FROM S,C,SC WHERE S.SNOSC.SNO AND SC.CNOC.CNO AND S.SEX男男;SNO CNO GRADE A041 CC112 92 A041

31、 ME234 92.5 A041 MS211 90 C005 CC112 84.5 C005 CS202 82 M038 ME234 85 R098 CS202 75 R098 MS211 70.5 SNO SNAME DEPART SEX BDATE HEIGHT A041 周光明 自動(dòng)控制 男 1986-8-10 1.7 C005 張雷 計(jì)算機(jī) 男 1987-6-30 1.75 C008 王寧 計(jì)算機(jī) 女 1986-8-20 1.62 M038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988-10-20 1.65 R098 錢欣 管理工程 男 1986-5-16 1.8 CNO CNAME LHOUR S

32、EMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 學(xué)生登記表(S)學(xué)生選課成績(jī)表(SC)課程開設(shè)表(C)查詢涉及查詢涉及S、C和和SC三個(gè)表,三個(gè)表,S和和SC表通過表通過SNO作連接作連接,C和和SC表通過表通過CNO來實(shí)現(xiàn)連接來實(shí)現(xiàn)連接21第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn SQL的數(shù)據(jù)更新的數(shù)據(jù)更新nSQL提供了插入數(shù)據(jù)、更改數(shù)據(jù)和刪除數(shù)據(jù)的提供了插入數(shù)據(jù)、更改數(shù)據(jù)和刪除數(shù)據(jù)的3類語句類語句。n (1) 插入語句插入語句n 插入語句插

33、入語句INSERT可將一個(gè)記錄插入到指定的表中:可將一個(gè)記錄插入到指定的表中:n例如,將一個(gè)新的課程記錄插入到課程開設(shè)表例如,將一個(gè)新的課程記錄插入到課程開設(shè)表C中中:n 插入插入插入插入(CW101,論文寫作,30,春)CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 CW101 論文寫作 30 春 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60

34、 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 C CINSERT INTO (,) VALUES(,)INSERT INTO S(CNO,CNAME,LHOUR,SEMESTER) VALUES(CW101,論文寫作論文寫作,30,春春)22第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn(2)更改語句)更改語句n 對(duì)指定表中已有數(shù)據(jù)進(jìn)行修改。語句格式如下:對(duì)指定表中已有數(shù)據(jù)進(jìn)行修改。語句格式如下: 其功能是修改指定表中滿足其功能是修改指定表中滿足WHERE子句條件的記錄,其中子句條件的記錄,其中SET子句給出子句給出的的值用于取代相應(yīng)列的值值用于取代

35、相應(yīng)列的值. n例如例如 :將將ME234課程的課時(shí)改為課程的課時(shí)改為30,并改成春季開設(shè):并改成春季開設(shè):n 更新更新更新更新CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 30 春 MS211 人工智能 60 秋 C CUPDATE SET .WHEREUPDATE C

36、 SET LHOUR=30, SEMESTER春春 WHERE CNOME234 ;23第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn(3)刪除數(shù)據(jù))刪除數(shù)據(jù)n SQL刪除語句的格式為:刪除語句的格式為:n其功能是從指定表中刪除滿足其功能是從指定表中刪除滿足WHERE子句條件的記錄。子句條件的記錄。如果省略如果省略WHERE子句,則刪除表中所有記錄子句,則刪除表中所有記錄. n 例如,從例如,從C表中刪除課程號(hào)為表中刪除課程號(hào)為CC112的記錄:的記錄:n 刪除刪除刪除刪除CNO CNAME LHOUR SEMESTER CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程

37、60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 CNO CNAME LHOUR SEMESTER CC112 軟件工程 60 春 CS202 數(shù)據(jù)庫 45 秋 EE103 控制工程 60 春 ME234 數(shù)學(xué)分析 40 秋 MS211 人工智能 60 秋 C CDELETE FROM WHERE DELETE FROM C WHERE CNO=CC112;24第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLn SQL的的視圖視圖n 視圖是視圖是DBMS所提供的一種由用戶觀察數(shù)據(jù)庫中數(shù)據(jù)的重所提供的一種由用戶觀察數(shù)據(jù)庫中數(shù)據(jù)的重要機(jī)制。視圖可由基本表或其

38、他視圖導(dǎo)出。它與基本表不同,要機(jī)制。視圖可由基本表或其他視圖導(dǎo)出。它與基本表不同,視圖只是一個(gè)虛表,在數(shù)據(jù)字典中保留其邏輯定義,而不作為視圖只是一個(gè)虛表,在數(shù)據(jù)字典中保留其邏輯定義,而不作為一個(gè)表實(shí)際存儲(chǔ)數(shù)據(jù)。一個(gè)表實(shí)際存儲(chǔ)數(shù)據(jù)。n SQL用用CREATE VIEW語句建立視圖,其格式為:語句建立視圖,其格式為:n n CREATE VIEW 視圖名列名,視圖名列名,n AS 子查詢子查詢25第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)關(guān)系數(shù)據(jù)庫語言關(guān)系數(shù)據(jù)庫語言SQLnSQL視圖的例視圖的例:n例如,若建立管理工程系學(xué)生的視圖例如,若建立管理工程系學(xué)生的視圖ME_S,語句為:,語句為:n n 視圖定義后,

39、用戶就可以象對(duì)基本表操作一樣對(duì)視圖進(jìn)行查視圖定義后,用戶就可以象對(duì)基本表操作一樣對(duì)視圖進(jìn)行查詢。詢。例如,在管理工程系的學(xué)生視圖中找出年齡大于例如,在管理工程系的學(xué)生視圖中找出年齡大于25歲的學(xué)歲的學(xué)生生,其其SQL語句為語句為:n CREATE VIEW ME_s AS (SELECT SNO,SNAME,SEX,BDATE,HEIGHT FROM S WHERE DEPART管理工程管理工程) ;SELECT SNANE 2008-YEAR(BDATE) FROM ME_S WHERE 2008YEAR(BDATE)25;26第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)數(shù)據(jù)庫系統(tǒng)及應(yīng)用新技術(shù)數(shù)據(jù)庫系統(tǒng)及

40、應(yīng)用新技術(shù)n數(shù)據(jù)庫體系結(jié)構(gòu)的發(fā)展數(shù)據(jù)庫體系結(jié)構(gòu)的發(fā)展n DBS運(yùn)行在計(jì)算機(jī)系統(tǒng)之上,其體系結(jié)構(gòu)與計(jì)算機(jī)體系結(jié)運(yùn)行在計(jì)算機(jī)系統(tǒng)之上,其體系結(jié)構(gòu)與計(jì)算機(jī)體系結(jié)構(gòu)密切相關(guān)。因此構(gòu)密切相關(guān)。因此DBS的系統(tǒng)結(jié)構(gòu)也隨著它的硬件和軟件支撐的系統(tǒng)結(jié)構(gòu)也隨著它的硬件和軟件支撐環(huán)境的變化而不斷演變。環(huán)境的變化而不斷演變。n 集中式數(shù)據(jù)庫系統(tǒng)集中式數(shù)據(jù)庫系統(tǒng)。早期的。早期的DBMS以分時(shí)操作系統(tǒng)作為以分時(shí)操作系統(tǒng)作為運(yùn)行環(huán)境,采用集中式的數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),把數(shù)據(jù)庫建立在本運(yùn)行環(huán)境,采用集中式的數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),把數(shù)據(jù)庫建立在本單位的主計(jì)算機(jī)上,且不與其他計(jì)算機(jī)系統(tǒng)進(jìn)行數(shù)據(jù)交互。在單位的主計(jì)算機(jī)上,且不與其他計(jì)算機(jī)系統(tǒng)

41、進(jìn)行數(shù)據(jù)交互。在這種系統(tǒng)中,不但數(shù)據(jù)是集中的,數(shù)據(jù)的管理也是集中的。這種系統(tǒng)中,不但數(shù)據(jù)是集中的,數(shù)據(jù)的管理也是集中的。.終端終端DB27第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)數(shù)據(jù)庫體系結(jié)構(gòu)的發(fā)展數(shù)據(jù)庫體系結(jié)構(gòu)的發(fā)展n 客戶客戶/服務(wù)器結(jié)構(gòu)服務(wù)器結(jié)構(gòu)(C/S)n 是一種網(wǎng)絡(luò)處理系統(tǒng)。有多臺(tái)用作客戶機(jī)的計(jì)算機(jī)和一至是一種網(wǎng)絡(luò)處理系統(tǒng)。有多臺(tái)用作客戶機(jī)的計(jì)算機(jī)和一至多臺(tái)用作服務(wù)器的計(jì)算機(jī)??蛻魴C(jī)直接面向用戶,接收并處理多臺(tái)用作服務(wù)器的計(jì)算機(jī)。客戶機(jī)直接面向用戶,接收并處理任務(wù),將需要任務(wù),將需要DB操作的任務(wù)委托服務(wù)器執(zhí)行;而服務(wù)器只接操作的任務(wù)委托服務(wù)器執(zhí)行;而服務(wù)器只接收這種委托,完成對(duì)收這種委托,完成對(duì)DB的查詢和更新,并把查詢結(jié)果返回給的查詢和更新,并把查詢結(jié)果返回給客戶機(jī)。客戶機(jī)。C/S結(jié)構(gòu)的結(jié)構(gòu)的DBS雖然處理上是分布的,但數(shù)據(jù)卻是集雖然處理上是分布的,但數(shù)據(jù)卻是集中的,還是屬于集中式數(shù)據(jù)庫系統(tǒng)。中的,還是屬于集中式數(shù)據(jù)庫系統(tǒng)。客戶機(jī)客戶機(jī)計(jì)算機(jī)網(wǎng)絡(luò)計(jì)算機(jī)網(wǎng)絡(luò)DB數(shù)據(jù)庫服務(wù)器數(shù)據(jù)庫服務(wù)器28第6章 信息系統(tǒng)與數(shù)據(jù)庫(1)數(shù)據(jù)庫體系結(jié)構(gòu)的發(fā)展數(shù)據(jù)庫體系結(jié)構(gòu)的發(fā)展n 瀏覽器瀏覽器/服務(wù)器結(jié)構(gòu)服務(wù)器結(jié)構(gòu)(B/S)n n 由瀏覽器由瀏覽器,Web服務(wù)器服

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論