資源描述:
《SQL的數(shù)據定義語句.ppt》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、第七章SQL的數(shù)據定義與操縱7.1SQL的數(shù)據定義功能7.2SQL的數(shù)據定義語句7.3SQLServer2000的數(shù)據定義語句7.4SQL的數(shù)據操縱功能7.5SQL的數(shù)據操縱語句7.6SQL中的視圖語句7.7SQLServer2000中的數(shù)據操縱及視圖功能本章小結習題7.1SQL的數(shù)據定義功能主要為應用系統(tǒng)定義數(shù)據庫上的整體結構模式,包括三個層次:上層---模式層關系數(shù)據庫管理系統(tǒng)可以定義多個模式每個模式對應一個應用系統(tǒng)模式由若干個表、視圖及索引組成7.1SQL的數(shù)據定義功能中層---表結構層基表創(chuàng)建表修改表刪除表視圖視圖是建立在基表上的虛表創(chuàng)建視圖刪除視圖索引創(chuàng)建索引刪除索引7.1
2、SQL的數(shù)據定義功能底層---列定義層表中屬性的定義如列名的定義列數(shù)據類型的定義列的完整性約束定義如列是否是主鍵或外鍵列值是否允許為空列間的約束表達式7.2SQL的數(shù)據定義語句1SQL的基本數(shù)據類型7.2SQL的數(shù)據定義語句2SQL的模式定義語句模式定義定義語句:createschema<模式名>authorization<用戶名>例如,學生數(shù)據庫的模式可定義如下:createschemastudentauthorizationlin;7.2SQL的數(shù)據定義語句模式刪除語句為Dropschema<模式名>,<刪除方式>刪除方式有兩種:Cascade,表示級聯(lián)方式Restrict,表示
3、限制方式刪除學生數(shù)據庫模式:Dropschemastudentcascade;7.2SQL的數(shù)據定義語句3SQL的表定義語句表的定義語句Createtable<表名>(<列定義>[<列定義>]…)[其它參數(shù)]其中列定義形式如下:<列名><數(shù)據類型>7.2SQL的數(shù)據定義語句例:前面所創(chuàng)建的student數(shù)據庫中有s,c,sc三張表,試定義它們。createtables(snochar(4),snamevarchar(8),sagesmallint,sexchar(2),sdeptchar(2));7.2SQL的數(shù)據定義語句createtablec(cnochar(2),cnameva
4、rchar(20),creditnumeric);createtablesc(snochar(4),cnochar(2),gradesmallint);7.2SQL的數(shù)據定義語句表的更改增加列Altertable<表名>add<列名><數(shù)據類型>例,在s中增加一個新的列sexAltertablesaddsexchar(2);刪除列Altertable<表名>drop<列名>例,在s中將sdept刪除Altertablesdropsdept;7.2SQL的數(shù)據定義語句表的刪除語句droptable<表名>例,刪除s表droptables;刪除表后,表中的數(shù)據、在此表上建立的視圖、索引都
5、將刪除7.2SQL的數(shù)據定義語句4SQL的索引定義語句建立索引語句create[unique][cluster]index<索引名>on<表名>(<列名>[順序]...)[其它參數(shù)]Unique:唯一性索引,不允許兩個元組在給定索引中有相同的值。Cluster:聚簇索引,索引項的順序與表中記錄的物理順序一致。順序:ASC,DESC2SQL的數(shù)據定義語句例:在表s的sno上建立一個按升序排列的唯一性索引xsno。createuniqueindexxsnoons(sno)asc;刪除索引語句dropindex<索引名>刪除名為xsno的索引dropindexxsno;7.3SQLServ
6、er2000中的數(shù)據定義語句建立數(shù)據庫Createdatabasestudent1;刪除數(shù)據庫Dropdatabasestudent1;7.4SQL的數(shù)據操縱功能數(shù)據查詢功能select增、刪、改功能Insert,delete,update其它功能賦值分類運算7.5SQL的數(shù)據操縱語句關系代數(shù)中的查詢語句求選修了c1號課程的學生姓名∏sname(?cno=c1(SSC))7.5SQL的數(shù)據操縱語句1SQL的查詢語句Select列名From表名Where選擇條件投影選擇連接7.5SQL的數(shù)據操縱語句示例數(shù)據:S(sno,sname,sage,sex,sdept)C(cno,cname,
7、credit)SC(sno,cno,grade)7.5SQL的數(shù)據操縱語句SQL的基本查詢語句單表簡單查詢例1:查詢所有學生的情況select*froms;*代表所有的列例2:查詢所有學生的姓名selectsnamefroms;7.5SQL的數(shù)據操縱語句例3:查詢學號為s01的學生學號與姓名Selectsno,snameFromsWheresno=‘s01’;Where后面可以使用比較符,包括=、<、>、>=、<=、<>、!=7.5SQL的數(shù)據操縱語句例4