


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)庫(kù)系統(tǒng)概述、有關(guān)概念1 數(shù)據(jù)2 數(shù)據(jù)庫(kù)(DB )3 .數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS )桌面DBMSSQL ServerOracle客戶機(jī)/服務(wù)器型DBMSMySQLDB24 數(shù)據(jù)庫(kù)系統(tǒng)(DBS)c數(shù)據(jù)庫(kù)(DB)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS )開發(fā)工具應(yīng)用系統(tǒng)二、數(shù)據(jù)管理技術(shù)的發(fā)展1 數(shù)據(jù)管理的三個(gè)階段(1 )人工管理階段(2)文件系統(tǒng)階段(3 )數(shù)據(jù)庫(kù)系統(tǒng)階段概念模型一、模型的三個(gè)世界1 現(xiàn)實(shí)世界2 .信息世界:即根據(jù)需求分析畫概念模型(即E-R圖),E-R圖與DBMS無關(guān)3 機(jī)器世界:將E-R圖轉(zhuǎn)換為某一種數(shù)據(jù)模型,數(shù)據(jù)模型與DBMS相關(guān)。注意:信息世界又稱概念模型,機(jī)器世界又稱數(shù)據(jù)模型二、實(shí)體
2、及屬性1 實(shí)體:客觀存在并可相互區(qū)別的事物。2 .屬性:3 關(guān)鍵詞:能唯一標(biāo)識(shí)每個(gè)實(shí)體又不含多余屬性的屬性組合。一個(gè)表的碼可以有多個(gè),但主碼只能有一個(gè)。4.實(shí)體型:即二維表的結(jié)構(gòu)5實(shí)體集:即整個(gè)二維表三、實(shí)體間的聯(lián)系: 1兩實(shí)體集間實(shí)體之間的聯(lián)系1: 1聯(lián)系、1: n聯(lián)系、m : n聯(lián)系2同一實(shí)體集內(nèi)實(shí)體之間的聯(lián)系1 : 1 聯(lián)系、 1 : n 聯(lián)系、 m : n 聯(lián)系數(shù)據(jù)模型一、層次模型:用樹型結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。二、網(wǎng)狀模型:用圖結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。三、關(guān)系模型:用二維表表示實(shí)體之間的聯(lián)系。1 重要術(shù)語: 關(guān)系:一個(gè)關(guān)系就是一個(gè)二維表; 元組:二維表的一行,即實(shí)體; 關(guān)系模式:在實(shí)
3、體型的基礎(chǔ)上,注明主碼。 關(guān)系模型:指一個(gè)數(shù)據(jù)庫(kù)中全部二維表結(jié)構(gòu)的集合。數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)的 模式結(jié)構(gòu)三級(jí)模式1 模式:是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。 模式只涉及數(shù)據(jù)庫(kù)的結(jié)構(gòu);模式既不涉及應(yīng)用程序,又不涉及數(shù)據(jù)庫(kù)結(jié)構(gòu)的存儲(chǔ); 外模式:是模式的一個(gè)子集,是與某一個(gè)應(yīng)用程序有關(guān)的邏輯表示。 特點(diǎn):一個(gè)應(yīng)用程序只能使用一個(gè)外模式,但同一個(gè)外模式可為多個(gè)應(yīng)用程序使用。 內(nèi)模式:描述數(shù)據(jù)庫(kù)結(jié)構(gòu)的存儲(chǔ),但不涉及物理記錄。2兩級(jí)映象 外模式 /模式映象:保證數(shù)據(jù)庫(kù)的邏輯獨(dú)立性; 模式 /內(nèi)模式映象:保證數(shù)據(jù)庫(kù)的物理獨(dú)立性; 3兩級(jí)映象的意義 使數(shù)據(jù)庫(kù)與應(yīng)用系統(tǒng)完全分開,數(shù)據(jù)庫(kù)改變時(shí),應(yīng)用系
4、統(tǒng)不必改變。 數(shù)據(jù)的存取完全由 DBMS 管理,用戶不必考慮存取路徑。數(shù)據(jù)庫(kù)管理系統(tǒng)1 DBMS 的功能:負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一的管理與控制。 數(shù)據(jù)定義:即定義數(shù)據(jù)庫(kù)中各對(duì)象的結(jié)構(gòu) 數(shù)據(jù)操縱:包括對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢、插入、刪除、修改等操作。 數(shù)據(jù)控制:包括安全性控制、完整性控制、并發(fā)控制、數(shù)據(jù)庫(kù)恢復(fù)。2 DBMS 的組成:DDL 語言DML 語言DCL 語言實(shí)用程序一、 基本概念1碼:能唯一標(biāo)識(shí)元組的屬性集。2候選碼:一個(gè)屬性集既能唯一標(biāo)識(shí)元組,且又不含有多余屬性,一個(gè)關(guān)系模式可以有多個(gè)候選碼。 3主碼:任選候選碼中的一個(gè)。4主屬性:主碼中包含的各個(gè)屬性。5非主屬性:不包含在主碼中的各個(gè)屬性。6
5、外碼:設(shè)F是關(guān)系R的一個(gè)屬性,不是 R的主碼,但卻是另一個(gè)關(guān)系 S的主碼,則稱F是關(guān)系R 的外碼。關(guān)系的數(shù)學(xué)定義一、域1 定義:域是一組具有相同類型的值的集合。2 域的基數(shù):域中所含數(shù)據(jù)的個(gè)數(shù)。二、笛卡爾積1. 定義:給定一組域 D1,D2,D3 ,_則D1 XD2 XD3稱為笛卡爾積。2 .笛卡爾積D1 XD2 XD3對(duì)應(yīng)一個(gè)二維表,所含元組的個(gè)數(shù)等于各個(gè)域的基數(shù)之積。三、關(guān)系1 定義:笛卡兒積的一部分元組稱為關(guān)系。2 關(guān)系的目(或度):一個(gè)關(guān)系所含屬性的個(gè)數(shù)。3 關(guān)系的性質(zhì)任意兩個(gè)元組不能完全相同,但屬性名允許重復(fù)。四、關(guān)系的完整性1 實(shí)體完整性:指關(guān)系的所有主屬性都不能取空值。注意:實(shí)體
6、完整性不僅僅是主碼整體不能取空值。2 參照完整性:指一個(gè)關(guān)系外碼的取值必須是相關(guān)關(guān)系中主碼的有效值或空值。五、專門的關(guān)系運(yùn)算1 選擇:從關(guān)系 R中選擇滿足條件的元組。2 投影:從關(guān)系R中選擇若干屬性組成新的關(guān)系,并把新關(guān)系的重復(fù)元組去掉。3 條件連接:將兩關(guān)系按一定條件連接成一個(gè)新關(guān)系說明:條件連接:兩關(guān)系可以沒有公共屬性,若有公共屬性,則新關(guān)系含有重復(fù)屬性。4 自然連接:將兩關(guān)系按公共屬性連接成一個(gè)新的關(guān)系,并把新關(guān)系的重復(fù)屬性去掉。說明: 自然連接:兩關(guān)系至少有一個(gè)公共屬性。 對(duì)于R的每個(gè)元組,S都從第一個(gè)元組開始判斷,若兩元組的公共屬性值相同,則產(chǎn)生一個(gè) 新元組添加到新關(guān)系中,最后把新關(guān)
7、系中的重復(fù)屬性去掉。關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論函數(shù)依賴一、有關(guān)概念:1 函數(shù)依賴:任給R ( U), U為屬性集,x、/為U的子集,如果對(duì)于x的每個(gè)值,y有唯一確定的值與之對(duì)應(yīng),則 稱x決定y,或y函數(shù)依賴于x。2.完全函數(shù)依賴:若x t y,且對(duì)于x的所有真子集X,都有x' y,則稱x*完全決定y,或y完全函數(shù)依賴于x。 結(jié)論:若xty,且x只包含一個(gè)屬性,則 x fT y。3 部分函數(shù)依賴:若xty,且存在x的一個(gè)真子集X,滿足x't,則稱x部分決定y,或y部分函數(shù)依賴于x。4 .傳遞函數(shù)依賴:若xty,yt乙但 y /x,則一七,Z二、平凡函數(shù)依賴與非平凡函數(shù)依賴設(shè)xt y,如
8、果y是x的子集,則該依賴是平凡的。如果y中至少有一個(gè)屬性不在 x中,則該依賴是非平凡的。如果y中沒有一個(gè)屬性在x中,則該依賴為完全非平凡的。關(guān)系模式的規(guī)范化一、存在問題 數(shù)據(jù)冗余大; 修改麻煩; 插入異常:應(yīng)該插入到 DB中的數(shù)據(jù)插不進(jìn)去。女口:新開課程沒有學(xué)生選修時(shí),新開課程的課程號(hào)、課程名插不進(jìn)去。 刪除異常:不應(yīng)該刪除的數(shù)據(jù)被刪掉。如選修某門課的學(xué)生畢業(yè)了,在刪除學(xué)生信息的同時(shí),把課程信息也刪除掉。結(jié)論:一個(gè)好的關(guān)系模式應(yīng)滿足: 冗余應(yīng)盡可能少; 應(yīng)盡可能避免插入、刪除異常; 消去關(guān)系中不合適的屬性依賴關(guān)系。二、關(guān)系模式的規(guī)范化1 第一范式(1NF ) 定義:若關(guān)系R的所有屬性不能再分,
9、貝U R 1NF 存在問題 原因:存在非主屬性對(duì)主碼的部分依賴。 解決辦法:消除非主屬性對(duì)主碼的部分依賴,將關(guān)系R一分為二,將滿足完全依賴的屬性集組成一個(gè)關(guān)系;將滿足部分依賴的屬性集組成另一個(gè)關(guān) 系;2 第二范式(2NF ) 定義:若關(guān)系R1NF,且它的每個(gè)非主屬性都完全依賴于主碼,則稱RE 2NF。3 第三范式(3NF ) 定義:若關(guān)系RE2NF,且它的每個(gè)非主屬性都不傳遞依賴于主碼,則稱R E 3NF。4 .結(jié)論 若R 1NF,且主碼只含一個(gè)屬性,貝U R 一定為2NF。 若RE 2NF,且只有01個(gè)非主屬性,則 R 一定為3NF 3NF 一般控制了數(shù)據(jù)冗余,一般避免了操作異常。 范式并非
10、越高越好,適可而止。數(shù)據(jù)庫(kù)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)的步驟 需求分析:了解分析用戶的需要、要求。 概念結(jié)構(gòu)設(shè)計(jì):根據(jù)需求分析的結(jié)果畫概念模型(即 E-R圖) 邏輯結(jié)構(gòu)設(shè)計(jì):將E-R圖轉(zhuǎn)換為某一種數(shù)據(jù)模型,并優(yōu)化。 物理結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫(kù)實(shí)施 數(shù)據(jù)庫(kù)運(yùn)行與恢復(fù)概念結(jié)構(gòu)設(shè)計(jì)一、局部E-R圖設(shè)計(jì)1 .確定局部范圍通常把系統(tǒng)涉及的各個(gè)部門或各個(gè)主要功能作為局部。2確定實(shí)體與屬性 屬性是不能再分的數(shù)據(jù)項(xiàng); 聯(lián)系只發(fā)生在兩實(shí)體之間; 原則上,能夠作為屬性,就不要作為實(shí)體。二、合并成總體E-R圖1 消除各局部E-R圖的沖突問題。2 按公共實(shí)體名合并,生成初步E-R圖。3消除冗余的屬性和冗余的聯(lián)系,生成總體E-R圖。邏輯
11、結(jié)構(gòu)設(shè)計(jì)一、聯(lián)系的屬性和主碼(1 )聯(lián)系的屬性:必須包含相關(guān)聯(lián)的各實(shí)體型的主碼。(2)聯(lián)系的主碼1 : 1聯(lián)系:可以是相關(guān)聯(lián)的任一實(shí)體型的主碼。1: n聯(lián)系:必須是n方實(shí)體型的主碼。m : n聯(lián)系:必須是相關(guān)聯(lián)的各實(shí)體型的主碼之和。二、E-R圖向關(guān)系模型的轉(zhuǎn)換(1 )把每個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式。(2) 1 : 1聯(lián)系:可以消化到相關(guān)聯(lián)的任一實(shí)體型對(duì)應(yīng)的關(guān)系模式中。(3) 1 : n聯(lián)系:可以消化到n方實(shí)體名對(duì)應(yīng)的關(guān)系模式中。(4) m : n聯(lián)系:必須轉(zhuǎn)換為一個(gè)關(guān)系模式,并且不能消化。(5) 多元聯(lián)系:不能消化物理結(jié)構(gòu)設(shè)計(jì)與數(shù)據(jù)庫(kù)實(shí)施1.物理結(jié)構(gòu)設(shè)計(jì)在邏輯設(shè)計(jì)的基礎(chǔ)上,為每個(gè)關(guān)系模式選擇合
12、適的存儲(chǔ)結(jié)構(gòu)與存儲(chǔ)方式。選擇存儲(chǔ)結(jié)構(gòu):即決定每個(gè)表的記錄順序。選擇存取方式:即決定為哪些屬性建立非聚集索引,以便加快查找速度。一般把經(jīng)常查詢的屬性名指 定為非聚集索引。2 數(shù)據(jù)庫(kù)實(shí)施主要工作:定義數(shù)據(jù)庫(kù)結(jié)構(gòu);組織數(shù)據(jù)入庫(kù);編寫應(yīng)用程序;數(shù)據(jù)庫(kù)試運(yùn)行;創(chuàng)建和使用數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)文件1 . 一個(gè)數(shù)據(jù)庫(kù)至少有一個(gè)主要數(shù)據(jù)文件和一個(gè)事務(wù)日志文件。如果數(shù)據(jù)庫(kù)很大,可以使用一個(gè)主要數(shù)據(jù)文件、多個(gè)次要數(shù)據(jù)文件和多個(gè)事務(wù)日志文件。主數(shù)據(jù)文件(.mdf )次數(shù)據(jù)文件(.ndf )A用于存放數(shù)據(jù)庫(kù)的各類對(duì)象事務(wù)日志文件(.ldf ):用來記錄對(duì)數(shù)據(jù)庫(kù)對(duì)象的所有更新操作。2 系統(tǒng)數(shù)據(jù)庫(kù)Master 數(shù)據(jù)庫(kù)、Model
13、數(shù)據(jù)庫(kù)二、創(chuàng)建數(shù)據(jù)庫(kù)1打開數(shù)據(jù)庫(kù):Use數(shù)據(jù)庫(kù)名2 刪除數(shù)據(jù)庫(kù):Drop database數(shù)據(jù)庫(kù)名三、修改數(shù)據(jù)庫(kù)1 分離和附加數(shù)據(jù)庫(kù)2 備份和還原數(shù)據(jù)庫(kù)3 數(shù)據(jù)的導(dǎo)入和導(dǎo)岀1 .字符型char(n)、varchar(n)、Text2 統(tǒng)一碼字符型創(chuàng)建和使用表數(shù)據(jù)類型每個(gè)英文字母、數(shù)字、漢字算 1 個(gè)字符,每個(gè)字符占 2 個(gè)字節(jié)。nchar(n) 、 nvarchar(n) 、 ntext3整型4實(shí)型 精確數(shù)值型 近似數(shù)值型5貸幣型6日期時(shí)間型使用對(duì)象資源管理器創(chuàng)建和管理表一、創(chuàng)建表1在一個(gè)表中只能定義一個(gè)標(biāo)識(shí)字段。2只有整型和精確數(shù)值型( decimal 、 numeric )字段才能指定為標(biāo)
14、識(shí)字段。3把某個(gè)字段指定為公式字段。二、設(shè)置約束1主鍵約束: 每個(gè)表中只能有一列或一個(gè)組合被指定為主鍵,主鍵中的各個(gè)列不能為空值。2外鍵約束: 創(chuàng)建外鍵約束,就是定義兩個(gè)表的永久關(guān)聯(lián),這兩個(gè)表分別稱為主鍵表、外鍵表。外鍵表中外鍵的值 只能是主鍵表中主鍵的有效值或空值。3唯一性約束:主鍵約束與唯一性約束的區(qū)別是:(1 ) 在一個(gè)表中只能定義一個(gè)主鍵約束,但可定義多個(gè)唯一性約束;(2)指定為主鍵約束的列不能取空值,但指定為唯一性約束的列允許取空值。4唯一性約束: 用于限制輸入到一列或多列的值的范圍,保證數(shù)據(jù)庫(kù)的數(shù)據(jù)完整性。5默認(rèn)值約束:T-SQL一、SQL語言的特點(diǎn) SQL語言集數(shù)據(jù)定義、數(shù)據(jù)查詢
15、、數(shù)據(jù)操縱、數(shù)據(jù)控制的功能于一體。 所有的 DBMS 都支持 SQL 語言。T-SQL 基礎(chǔ)一、創(chuàng)建和使用數(shù)據(jù)庫(kù)1創(chuàng)建數(shù)據(jù)庫(kù)create database 數(shù)據(jù)庫(kù)名2使用數(shù)據(jù)庫(kù)Use 數(shù)據(jù)庫(kù)名3刪除數(shù)據(jù)庫(kù)drop database 數(shù)據(jù)庫(kù)名二、定義表1創(chuàng)建表create table 表名(屬性名 類型,屬性名 類型) 指定標(biāo)識(shí)字段: identity( 標(biāo)識(shí)種子,標(biāo)識(shí)增量 ) 指定公式字段:屬性名 as表達(dá)式2刪除表drop table 表名,,表名三、select 語句select */ 表達(dá)式表into 新表 from 表名 , ,表名where 條件 group by 屬性名 havin
16、g 條件 order by 屬性名 Asc/Desc1 Select 子句 *代表所有屬性名 若一個(gè)屬性名來自多個(gè)表,則屬性名前須冠以表名,格式為:表名 . 屬性名 設(shè)置表達(dá)式的別名:表達(dá)式 As 別名 限制查詢結(jié)果的記錄行數(shù):all 返回全部記錄top n返回前面 n 行記錄distinct表示取消重復(fù)行說明: top n 只能放在關(guān)鍵字 select 的后面;all 、distinct 只能放在關(guān)鍵字 select 或聚合函數(shù)的后面。2 Where 子句 in 的格式:屬性名 in ( 常量, ,常量 ) like 的格式:屬性名 like 通配字符串 在 Where 子句中指定連接:Wh
17、ere 表名 1. 屬性名 = 表名 2. 屬性名3 Order by 子句order by 屬性名 1 Asc/Desc, 屬性名 2 Asc/Desc4 聚合函數(shù)5. Group by 子句使用Group by子句時(shí),Select子句只能使用分組項(xiàng)字段和聚合函數(shù)6. Having 子句 Having子句只能跟在Group by 子句之后,且只能使用聚合函數(shù)和分組項(xiàng)字段。 where子句放在Group by子句之前,甚至可以沒有 Group by 子句;且不能包含聚合函數(shù)。7. into子句功能:將查詢結(jié)果保存到新的基表中。一、查詢的分類單表查詢*連接查詢 嵌套查詢五、數(shù)據(jù)操縱1. inse
18、rt 語句(1)每次插入一條記錄insert into表名(屬性名表)values(表達(dá)式表)(2)插入子查詢的結(jié)果insert into表名(屬性名表)update 表名set屬性名=值,屬性名=值where 條件缺省where子句,默認(rèn)為更新全部記錄。3. delete 語句delete from 表名 where 條件T-SQL程序設(shè)計(jì)基礎(chǔ)一、常量:字符型:由單引號(hào)括住J整型實(shí)型二、變量:局部變量:由用戶定義和賦值,以開頭。一全局變量:由系統(tǒng)定義和賦值,以 開頭1. 聲明局部變量Declare 變量名類型2. 給局部變量賦值 使用 set 語句:Set 變量名 = 表達(dá)式 使用 sele
19、ct 語句Select變量名=表達(dá)式,變量名=表達(dá)式from 表名 若表達(dá)式中含有屬性名,則必須使用 from 子句。3. 輸出表達(dá)式的值: 使用 print 語句Print 表達(dá)式 使用 select 語句Select表達(dá)式,表達(dá)式from 表名 4局部變量的作用域: 只能在聲明它的批處理中使用。批處理1什么叫批處理?一個(gè)腳本由一個(gè)或多個(gè)批處理組成,批處理以 GO 作為結(jié)束標(biāo)志。2批處理是腳本的編譯單位,當(dāng)一個(gè)批處理中的某個(gè)語句出現(xiàn)編譯錯(cuò)誤, 則批處理中的任何語句均無法執(zhí)行。3當(dāng)一個(gè)批處理中的某個(gè)語句出現(xiàn)運(yùn)行錯(cuò)誤,則批處理中當(dāng)前語句和它之后的語句將無法執(zhí)行。流程控制語句一、begin end
20、 語句二、if-else 語句 當(dāng)邏輯表達(dá)式包含子查詢時(shí),子查詢必須用括號(hào)括住。三、case 表達(dá)式說明: case 表達(dá)式不是語句,不能單獨(dú)執(zhí)行。四、while 語句2專用于循環(huán)體的語句:Break強(qiáng)制退出 while 語句,執(zhí)行其后續(xù)語句。Continue返回 while 語句的入口。Break 、 Continue 必須放在循環(huán)體內(nèi),并常與 if-else 語句結(jié)合使用。二、其它語句1 Return 語句2存儲(chǔ)過程創(chuàng)建存儲(chǔ)過程 刪除存儲(chǔ)過程函數(shù)1 .創(chuàng)建函數(shù)create function 函數(shù)名(形參名 類型)returns 類型 asbegin函數(shù)體End注: 函數(shù)體最后一條語句必須是
21、return語句。 兩類函數(shù):標(biāo)量函數(shù)、內(nèi)嵌表值函數(shù)2 執(zhí)行函數(shù)Exec 變量名1=函數(shù)名 常量| 變量名Print函數(shù)名(常量| 變量名)3 刪除函數(shù)Drop function 函數(shù)名T-SQL高級(jí)應(yīng)用一、查詢的分類廠單表查詢v連接查詢嵌套查詢一、 連接查詢:在 where子句中指定連接1 內(nèi)連接:where 表名1.屬性名=表名2.屬性名2 .自身連接:給一個(gè)表取兩個(gè)別名,where子句的格式為:where 別名1屬性名=別名2屬性名3 左外連接:where 表名1.屬性名*=表名2.屬性名意義:查詢結(jié)果包含了表1的全部記錄和表2滿足條件的記錄4 右外連接:where 表名1.屬性名=*表
22、名2.屬性名意義:查詢結(jié)果包含了表 2的全部記錄和表1滿足條件的記錄三、連接查詢:在from 子句中指定連接1 內(nèi)連接:from表名1inner join表名2on 條件2 左外連接:from表名1 left outerjoin表名2 on條件3 右外連接:from表名1 right outerjoin表名2 on條件4 .完全外連接:from 表名1 full outer join 表名2 on 條件5 交叉連接四、嵌套查詢事務(wù)處理1 什么叫事務(wù)?事務(wù)是用戶定義的一組操作序列。 事務(wù)是并發(fā)控制的基本單位。 一個(gè)事務(wù)包含的諸操作要么都執(zhí)行,要么都不執(zhí)行。1 .事務(wù)的屬性 原子性:指事務(wù)中包含的
23、諸操作要么都執(zhí)行,要么都不執(zhí)行。 一致性:事務(wù)必須使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。 隔離性:一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。 持久性3 .顯式定義事務(wù)4 .在事務(wù)內(nèi)設(shè)置保存點(diǎn)使用游標(biāo)一、游標(biāo)的概念1 .每個(gè)表均有一個(gè)游標(biāo),它可以指向表的任意一條記錄。2 .移動(dòng)游標(biāo)的方法: 在觸發(fā)器或存儲(chǔ)過程中,使用SQL語句定義和使用游標(biāo)。 在前臺(tái)應(yīng)用程序中,使用主語言實(shí)現(xiàn)對(duì)游標(biāo)的移動(dòng)。二、Transact-SQL游標(biāo)的使用:1.聲明游標(biāo)Declare 游標(biāo)名 cursorforward_only / scroll global /localread_only for select 語句l f
24、orward_only( 只進(jìn)游標(biāo)):只能進(jìn)行 next操作,缺省為forward_only-scroll(滾動(dòng)游標(biāo))global /local:缺省為:global2 打開游標(biāo)open 游標(biāo)名打開游標(biāo)時(shí),游標(biāo)指向查詢結(jié)果集的第一條記錄之前。3提取游標(biāo)游標(biāo)名fetch next / prior / first /last frominto局部變量名表 缺省into子句:移動(dòng)游標(biāo),并顯示當(dāng)前記錄的內(nèi)容。 含into子句:移動(dòng)游標(biāo),并將當(dāng)前記錄各屬性值依次賦給局部變量 缺省游標(biāo)移動(dòng)方式,則為next。4 .關(guān)閉游標(biāo)close游標(biāo)名5 .釋放游標(biāo)索引一、索引的概念: 如果把數(shù)據(jù)表比作一本書,那么表的
25、索引就是這本書的目錄??梢?,索引使用戶能快速訪問數(shù)據(jù)表的特定信息。 索引包括兩項(xiàng):索引字段值、原記錄號(hào) 索引必須依附于某個(gè)基本表,不能單獨(dú)存在。二、索引的類型:聚集索引:影響數(shù)據(jù)表的記錄順序_非聚集索引:不會(huì)影響數(shù)據(jù)表的記錄順序注:一個(gè)表只能建立一個(gè)聚集索引,但可以建立若干個(gè)非聚集索引。三、創(chuàng)建索引1自動(dòng)創(chuàng)建索引:。如果在數(shù)據(jù)表的某個(gè)屬性設(shè)置主鍵約束或唯一約束,則系統(tǒng)將在這些屬性上自動(dòng)創(chuàng)建唯一索引。自動(dòng)創(chuàng)建的索引隨約束的存在而存在,隨約束的消失而消失。2 .使用SQL語句創(chuàng)建索引Create unique clustered/nonclustered index索引名On 表名(屬性名asc/
26、desc,屬性名asc/desc)注:若未指定clustered ,則創(chuàng)建非聚集索引; 若未指定排序方式,則為ASC; text,ntext類型的字段不能指定為索引字段。四、刪除索引:Drop index 索引名,索引名視圖一、視圖的特點(diǎn): 視圖只有結(jié)構(gòu),沒有記錄,是虛表; 一個(gè)視圖總對(duì)應(yīng)著一個(gè)select語句; 對(duì)視圖的查詢、更新,實(shí)際上是對(duì)基本表的查詢、更新。二、定義視圖:1創(chuàng)建視圖:Create view 視圖名(屬性名,屬性名)As 子查詢with check option說明:視圖的屬性個(gè)數(shù)必須與子查詢中 select 子句的表達(dá)式個(gè)數(shù)相同。 2刪除視圖:Drop view 視圖名,
27、視圖名三、查詢視圖:select */ 表達(dá)式表from視圖名,視圖名where 條件 group by 屬性名 order by 屬性名 Asc/Desc四、操縱視圖:1 向視圖插入一條記錄insert into 視圖名 (屬性名表 ) values( 表達(dá)式表 )2修改視圖中的數(shù)據(jù)update 視圖名 set 屬性名 =值, ,屬性名 =值 where 條件 缺省 where 子句,默認(rèn)為更新全部記錄。3刪除視圖中的記錄delete from 視圖名 where 條件 觸發(fā)器一、維護(hù)數(shù)據(jù)完整性的措施:創(chuàng)建約束,創(chuàng)建觸發(fā)器基于一個(gè)表創(chuàng)建 創(chuàng)建規(guī)則:以單獨(dú)的對(duì)象創(chuàng)建,可以綁定到數(shù)據(jù)庫(kù)的所有表中
28、。二、觸發(fā)器類型:1 after 觸發(fā)器:1 Instead of 觸發(fā)器:三、創(chuàng)建觸發(fā)器:Create trigger 觸發(fā)器名On 表名 |視圖名For | after | Instead of 觸發(fā)操作As SQL語句序列說明:for或after,表示創(chuàng)建after觸發(fā)器。觸發(fā)操作是指 Insert、update、delete 中的一個(gè)或多個(gè)。五、刪除觸發(fā)器Drop trigger觸發(fā)器名,觸發(fā)器名 把一個(gè)登錄名指定為數(shù)據(jù)庫(kù)的public和db_owner,則登錄名對(duì)該數(shù)據(jù)庫(kù)擁有全部權(quán)限。數(shù)據(jù)庫(kù)的構(gòu)建與數(shù)據(jù)裝入近矗資淳琶理器-fl XI| T園曰 0 hnovo-PC (SQL Serv
29、er 905000 - Lenovo 口站喜亠I縈統(tǒng)數(shù)據(jù)庫(kù)日IJ圖書首理站陣EJ Z表+田闔dbo.讀耆信息表±)3呂命.管理靈V錯(cuò) 田國(guó)dbo.営理員管懇舉 用 Tbd琶理靈T生 + 口 dbo,信閱轟 t 口 dbo.g書信息表(1 )圖書信息表LENOVOTC.g書曾.據(jù)陣- dbo.§書信宣表 疋軽源管逕器詳也言慝 別窯數(shù)擁奘型'允許空? ISBN陽(yáng)char20)書窯varchar(50)作者varchar(12)出版社varchar(SO)岀版日期datstrne簡(jiǎn)介varchar(20Q)爸主varcharfZOO)LENOVO PC圖書管蠟庫(kù)皈.圖書信
30、宜表對(duì)觀首理略細(xì)信息ISBN書名作者冊(cè)社岀版日期簡(jiǎn)介1大卅機(jī)陳建勛高麹能版社NULLNULL2計(jì)算機(jī)碑栄文官中國(guó)鐵道岀版社NULLnullfiUl3棚結(jié)構(gòu)劉大友靜大剋版社NUU.NUU.NULLA廿帥姐勰詡白中因科學(xué)蹶社NUUAUZfUl5牆?rùn)C(jī)應(yīng)用黃遠(yuǎn)林電子功憐社NULLNULLNULL6數(shù)疇統(tǒng)S£il科學(xué)蹶社NULLNULLNULL7C語言翱嚴(yán)維明AU£NULLNULLNULL*ALiiALi£JLLMl/NULLNULLNULL(2)讀者信息表LENOVO-PC.m5g. - Hbo.潼者信旦表対蠱資源管理器詳細(xì)信晝列名敎據(jù)類型允許空肉讀者學(xué)號(hào)varchar(
31、50)讀者姓名var(±kar(10)讀者性別uarchar(2聯(lián)系電話varchar(5Q)所在桌varchar(lZ)生數(shù)時(shí)間datetime尖效時(shí)間date time違章情;兄varchar(50)累計(jì)借書Gt備注varchar(lOO)LEN0V0K.fil -皈.蘑宿 11LENOQPC辭氤,辭如腳觀 X拔幗離卜UQIMil計(jì)軸2owo:oc:ro20啣Q;Q卿fJUU.17HUIU02tillIfflBm【耶軸Q血20/1 O:QO:DOAUi5!Ui1105inuu.m:軸期:M:皿20/10:00:00fill6!U1110G5Ui3010:0C:CO201/10;O
32、0:COtUl18fUl11QS汕201590 訓(xùn)即20】涮lwmmfUl6nju1109IStm20:稠期曲:皿20/1 MO:QOtm9tui111£雜iHUU.嗎盟訓(xùn)曲200:00:00mi湖fill1123甌20t0:00:CO201/10:0D:COHUI20狀11出mMil2OWO!O0;CO201WQ:«):GOmi12!UiNUU.tAJU.NJU.tAJU.HJU.NUU.NULrui(3)管理員信息表LENtWO-叱圉書管-dbd管理員信宜表對(duì)金資液管理器詳期信息列名數(shù)據(jù)類型允諜EV工作號(hào) 姓名 性別 電話 住址 留注varchar(lXvar(±iar(12) varchar varchar 20) varchar(50) vardnar(lOO)LENOVO-PC.45g. dbo.Sa LFNOgPCB膽”皈,苣理琳賽鷹壬疸漏臧信息工網(wǎng)0110Dill0112011301140115011601170113NUU.ii名8 陳云王玉性別玄卑男SS女i男電話ftiliNULLIULNULL阪IAUi阪INULLNHLNULLNHLNULLMilNULL(ULNULLALElNULLNHLNULL阪iAliiIUL她/W換AUZ幀(4)借閱表
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- minus-Verrucarol-生命科學(xué)試劑-MCE
- 4-Methoxy-α-ethylaminovalerophenone-hydrochloride-生命科學(xué)試劑-MCE
- 2025年家居護(hù)理用品合作協(xié)議書
- 2025年窯爐、熔爐及電爐項(xiàng)目發(fā)展計(jì)劃
- 2025年新型閥控型全密封免維護(hù)鉛酸蓄電池合作協(xié)議書
- 2025年新型電子時(shí)間繼電器項(xiàng)目發(fā)展計(jì)劃
- 教育局每日工作報(bào)告范文
- 2025年度生物制藥優(yōu)先股入股協(xié)議
- 2025年度混凝土攪拌站租賃與安全培訓(xùn)服務(wù)合同
- 二零二五年度定制家具定制與家居智能化解決方案合同
- 人教版高中英語必修二詞匯表(默寫版)
- 汽車電器線束DFMEA范例
- 船模航模車模社團(tuán)教案
- 【基于上市公司數(shù)據(jù)的康芝藥業(yè)盈利能力探析(定量論文)11000字】
- 幼兒園小班學(xué)情分析案例及分析
- 2024年義務(wù)教師考試招聘考試試題及答案
- 無人機(jī)紅外技術(shù)培訓(xùn)
- 2024中考英語1500詞匯默寫匯總表練習(xí)(含答案)
- 2022年四川省綿陽(yáng)市中考語文真題
- 麥琪的禮物全面英文詳細(xì)介紹
- 銀行前端工作總結(jié)
評(píng)論
0/150
提交評(píng)論