信息管理與數(shù)據(jù)庫技術(shù)3-SQL定義.ppt
-
資源ID:6252492
資源大小:365.86KB
全文頁數(shù):27頁
- 資源格式: PPT
下載積分:9.9積分
快捷下載
會員登錄下載
微信登錄下載
微信掃一掃登錄
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。
|
信息管理與數(shù)據(jù)庫技術(shù)3-SQL定義.ppt
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL 主講人 文娟wenjuan 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL SQL概述數(shù)據(jù)定義查詢數(shù)據(jù)更新視圖數(shù)據(jù)控制嵌入式SQL小結(jié) SQL概述 SQL的特點1 綜合統(tǒng)一2 高度非過程化3 面向集合的操作方式4 以同一種語法結(jié)構(gòu)提供兩種使用方法5 語言簡潔 易學(xué)易用 5 語言簡捷 易學(xué)易用 SQL概述數(shù)據(jù)定義查詢數(shù)據(jù)更新視圖數(shù)據(jù)控制嵌入式SQL小結(jié) 數(shù)據(jù)定義 定義語句格式 CREATETABLE 所要定義的基本表的名字 組成該表的各個屬性 列 涉及相應(yīng)屬性列的完整性約束條件 涉及一個或多個屬性列的完整性約束條件 例題 例1 建立一個 學(xué)生 表Student 它由學(xué)號Sno 姓名Sname 性別Ssex 年齡Sage 所在系Sdept五個屬性組成 其中學(xué)號不能為空 值是唯一的 并且姓名取值也唯一 例題 續(xù) 例題 續(xù) CREATETABLEStudent SnoCHAR 5 NOTNULLUNIQUE SnameCHAR 20 UNIQUE SsexCHAR 1 SageINT SdeptCHAR 15 定義基本表 續(xù) 常用完整性約束主碼約束 PRIMARYKEY唯一性約束 UNIQUE非空值約束 NOTNULL參照完整性約束PRIMARYKEY與UNIQUE的區(qū)別 例題 續(xù) 例2 建立一個 學(xué)生選課 表SC 它由學(xué)號Sno 課程號Cno 修課成績Grade組成 其中 Sno Cno 為主碼 CREATETABLESC SnoCHAR 5 CnoCHAR 3 Gradeint Primarykey Sno Cno 刪除基本表 DROPTABLE 基本表刪除數(shù)據(jù) 表上的索引都刪除表上的視圖往往仍然保留 但無法引用刪除基本表時 系統(tǒng)會從數(shù)據(jù)字典中刪去有關(guān)該基本表及其索引的描述 標(biāo)準(zhǔn)中沒有 認為表建立后就永久存在 例題 例5 刪除Student表DROPTABLEStudent 修改基本表 ALTERTABLE ADD 完整性約束 DROP MODIFY 要修改的基本表ADD子句 增加新列和新的完整性約束條件DROP子句 刪除指定的完整性約束條件MODIFY子句 用于修改列名和數(shù)據(jù)類型 例題 例2 向Student表增加 入學(xué)時間 列 其數(shù)據(jù)類型為日期型 ALTERTABLEStudentADDScomeDATE 不論基本表中原來是否已有數(shù)據(jù) 新增加的列一律為空值 語句格式 續(xù) 刪除屬性列直接 間接刪除把表中要保留的列及其內(nèi)容復(fù)制到一個新表中刪除原表再將新表重命名為原表名直接刪除屬性列 新 例 ALTERTABLEStudentDropScome 例題 例3 將年齡的數(shù)據(jù)類型改為半字長整數(shù) ALTERTABLEStudentMODIFYSageSMALLINT 注 修改原有的列定義有可能會破壞已有數(shù)據(jù) 例題 例4 刪除學(xué)生姓名必須取唯一值的約束 ALTERTABLEStudentDROPUNIQUE Sname 建立與刪除索引 建立索引是加快查詢速度的有效手段建立索引DBA或表的屬主 即建立表的人 根據(jù)需要建立有些DBMS自動建立以下列上的索引PRIMARYKEYUNIQUE維護索引DBMS自動完成使用索引DBMS自動選擇是否使用索引以及使用哪些索引 建立索引 語句格式CREATE UNIQUE CLUSTER INDEXON 用指定要建索引的基本表名字索引可以建立在該表的一列或多列上 各列名之間用逗號分隔用指定索引值的排列次序 升序 ASC 降序 DESC 缺省值 ASCUNIQUE表明此索引的每一個索引值只對應(yīng)唯一的數(shù)據(jù)記錄CLUSTER表示要建立的索引是聚簇索引 例題 例6 為學(xué)生 課程數(shù)據(jù)庫中的Student Course SC三個表建立索引 其中Student表按學(xué)號升序建唯一索引 Course表按課程號升序建唯一索引 SC表按學(xué)號升序和課程號降序建唯一索引 CREATEUNIQUEINDEXStusnoONStudent Sno CREATEUNIQUEINDEXCoucnoONCourse Cno CREATEUNIQUEINDEXSCnoONSC SnoASC CnoDESC 建立索引 續(xù) 唯一值索引對于已含重復(fù)值的屬性列不能建UNIQUE索引對某個列建立UNIQUE索引后 插入新記錄時DBMS會自動檢查新記錄在該列上是否取了重復(fù)值 這相當(dāng)于增加了一個UNIQUE約束 建立索引 續(xù) 聚簇索引建立聚簇索引后 基表中數(shù)據(jù)也需要按指定的聚簇屬性值的升序或降序存放 也即聚簇索引的索引項順序與表中記錄的物理順序一致例 CREATECLUSTERINDEXStusnameONStudent Sname 在Student表的Sname 姓名 列上建立一個聚簇索引 而且Student表中的記錄將按照Sname值的升序存放 建立索引 續(xù) 在一個基本表上最多只能建立一個聚簇索引聚簇索引的用途 對于某些類型的查詢 可以提高查詢效率聚簇索引的適用范圍很少對基表進行增刪操作很少對其中的變長列進行修改操作 刪除索引 DROPINDEX 刪除索引時 系統(tǒng)會從數(shù)據(jù)字典中刪去有關(guān)該索引的描述 例7 刪除Student表的Stusname索引 DROPINDEXStusname 本節(jié)結(jié)束