關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件

關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件

ID:27322760

大?。?89.51 KB

頁數(shù):136頁

時間:2018-12-01

關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件_第1頁
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件_第2頁
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件_第3頁
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件_第4頁
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件_第5頁
資源描述:

《關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql課件》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第三章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL本章主要教學(xué)內(nèi)容:?數(shù)據(jù)定義、查詢、數(shù)據(jù)更新?視圖?數(shù)據(jù)控制?嵌入式SQL3.1SQL概述3.1.1SQL的特點SQL是一個介于關(guān)系代數(shù)與關(guān)系演算之間的結(jié)構(gòu)化查詢語言,其功能不只是查詢。SQL是一個通用的、功能極強的關(guān)系數(shù)據(jù)庫查詢語言。1.一體化特點;2.高度非過程化;3.面向集合的操作方式;4.對待不同的工作方式采用統(tǒng)一的語法結(jié)構(gòu);5.語言簡潔,易學(xué)易用;6.視圖數(shù)據(jù)結(jié)構(gòu)3.1.2SQL語言的基本概念SQL語言支持關(guān)系數(shù)據(jù)庫三級模式結(jié)構(gòu)——視圖、基本表和存儲文件。SQL

2、視圖1視圖2基本表1基本表2基本表3基本表4存儲文件1存儲文件2外模式模式內(nèi)模式利用SQL進(jìn)行數(shù)據(jù)庫操作可分三個階段進(jìn)行:定義數(shù)據(jù)庫結(jié)構(gòu),定義關(guān)系模式;向已定義的數(shù)據(jù)庫中添加、刪除和修改數(shù)據(jù);對已存在數(shù)據(jù)庫進(jìn)行各種查詢與統(tǒng)計。3.2數(shù)據(jù)定義注:視圖是基于基本表的虛表,索引是依附于基本表的,因此SQL通常不提供修改視圖定義和修改索引的操作。3.2.1定義、刪除與修改基本表一、定義基本表學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept95001李勇男20CS95002劉晨女19IS9500

3、3王敏女18MA95004張立男19ISStudent命令格式:CREATETABLE<表名>(<列名><數(shù)據(jù)類型>[<列級完整性約束條件>][,<列名><數(shù)據(jù)類型>[<列級完整性約束條件>]]…[,<表級完整性約束條件>])<表名>:所要定義的基本表的名字說明:<列名>:組成該表的各個屬性(列)<列級完整性約束條件>:涉及相應(yīng)屬性列的完整性約束條件<表級完整性約束條件>:涉及一個或多個屬性列的完整性約束條件例1建立一個“學(xué)生”表Student,它由學(xué)號Sno、姓名Sname、性別Ssex、年齡Sag

4、e、所在系Sdept五個屬性組成。其中學(xué)號不能為空,值是唯一的,并且姓名取值也唯一。CREATETABLEStudent(SnoCHAR(5)NOTNULLUNIQUE,SnameCHAR(20)UNIQUE,SsexCHAR(1),SageINT,SdeptCHAR(15))常用完整性約束:唯一性約束:UNIQUE非空值約束:NOTNULL參照完整性約束主碼約束:PRIMARYKEYSC學(xué)號課程號成績SnoCnoGrade950011929500128595001388950022909500238

5、0例2建立一個“學(xué)生選課”表SC,它由學(xué)號Sno、課程號Cno,修課成績Grade組成。CREATETABLESC(SnoCHAR(5),CnoCHAR(3),Gradeint)二、修改擴充基本表ALTERTABLE<表名>[ADD<新列名><數(shù)據(jù)類型>[完整性約束]][DROP<完整性約束名>][MODIFY<列名><數(shù)據(jù)類型>];說明:<表名>:要修改的基本表ADD子句:增加新列和新的完整性約束條件DROP子句:刪除指定的完整性約束條件MODIFY子句:用于修改列名和數(shù)據(jù)類型命令格式:例4將年齡的

6、數(shù)據(jù)類型改為半字長整數(shù)。ALTERTABLEStudentMODIFYSageSMALLINT注:修改原有的列定義有可能會破壞已有數(shù)據(jù)。例5刪除學(xué)生姓名必須取唯一值的約束。ALTERTABLEStudentDROPUNIQUE(Sname)例3向Student表增加“入學(xué)時間”列,其數(shù)據(jù)類型為日期型。ALTERTABLEStudentADDScomeDATE注:不論基本表中原來是否已有數(shù)據(jù),新增加的列一律為空。三、刪除基本表DROPTABLE<表名>命令格式:說明:刪除基本表及其數(shù)據(jù),釋放相應(yīng)的存儲空

7、間,同時系統(tǒng)也自動刪除在此表上建立的各種索引,也刪除了在該表上授予的操作權(quán)限。表上的視圖往往仍然保留,但無法引用。例7刪除Student表DROPTABLE Student3.2.2建立與刪除索引建立索引是加快查詢速度的有效手段建立索引DBA或表的屬主(即建立表的人)根據(jù)需要建立有些DBMS自動建立以下列上的索引PRIMARYKEYUNIQUE維護(hù)索引(DBMS自動完成)使用索引DBMS自動選擇是否使用索引以及使用哪些索引一、建立索引命令格式:CREATE[UNIQUE][CLUSTER]INDEX<

8、索引名>ON<表名>(<列名>[<次序>][,<列名>[<次序>]]…);說明:用<表名>指定要建索引的基本表名字索引可以建立在該表的一列或多列上,各列名之間用逗號分隔用<次序>指定索引值的排列次序,升序:ASC,降序:DESC。缺省值:ASCUNIQUE表明此索引的每一個索引值只對應(yīng)唯一的數(shù)據(jù)記錄CLUSTER表示要建立的索引是聚簇索引所謂聚簇索引是指索引項的順序與表中記錄的物理順序一致的索引組織。例8為學(xué)生-課程數(shù)據(jù)庫中的Student,Course

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。