《數(shù)據(jù)庫(kù)原理》知識(shí)點(diǎn)總結(jié)(共20頁(yè))_第1頁(yè)
《數(shù)據(jù)庫(kù)原理》知識(shí)點(diǎn)總結(jié)(共20頁(yè))_第2頁(yè)
《數(shù)據(jù)庫(kù)原理》知識(shí)點(diǎn)總結(jié)(共20頁(yè))_第3頁(yè)
《數(shù)據(jù)庫(kù)原理》知識(shí)點(diǎn)總結(jié)(共20頁(yè))_第4頁(yè)
《數(shù)據(jù)庫(kù)原理》知識(shí)點(diǎn)總結(jié)(共20頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上 數(shù)據(jù)庫(kù)系統(tǒng)概述 一、有關(guān)概念1數(shù)據(jù)2數(shù)據(jù)庫(kù)(DB)3數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS) Access桌面DBMS VFP SQL Server Oracle客戶(hù)機(jī)/服務(wù)器型DBMS MySQL DB24數(shù)據(jù)庫(kù)系統(tǒng)(DBS) 數(shù)據(jù)庫(kù)(DB) 數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS) 開(kāi)發(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ù)需求分析畫(huà)概念模型(即E-R圖),E-R圖與DBMS無(wú)關(guān)。3機(jī)器世界:將E-R圖轉(zhuǎn)換為某一種數(shù)據(jù)模型,數(shù)據(jù)模型與DBMS相關(guān)。注意:信

2、息世界又稱(chēng)概念模型,機(jī)器世界又稱(chēng)數(shù)據(jù)模型二、實(shí)體及屬性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ù)模型一、層次模型:用樹(shù)型結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。二、網(wǎng)狀模型:用圖結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。三、關(guān)系模型:用二維表表示實(shí)體之間的聯(lián)系。1重要術(shù)語(yǔ):關(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)完全分開(kāi),數(shù)據(jù)庫(kù)改變時(shí),應(yīng)用系統(tǒng)不必

4、改變。 數(shù)據(jù)的存取完全由DBMS管理,用戶(hù)不必考慮存取路徑。 數(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)行查詢(xún)、插入、刪除、修改等操作。 數(shù)據(jù)控制:包括安全性控制、完整性控制、并發(fā)控制、數(shù)據(jù)庫(kù)恢復(fù)。2DBMS的組成:DDL語(yǔ)言 DML語(yǔ)言DCL語(yǔ)言實(shí)用程序一、 基本概念1碼:能唯一標(biāo)識(shí)元組的屬性集。2候選碼:一個(gè)屬性集既能唯一標(biāo)識(shí)元組,且又不含有多余屬性,一個(gè)關(guān)系模式可以有多個(gè)候選碼。3主碼:任選候選碼中的一個(gè)。4主屬性:主碼中包含的各個(gè)屬性。5非主屬性:不包含在主碼中的各個(gè)屬性。6外碼:設(shè)F是關(guān)系R的一

5、個(gè)屬性,不是R的主碼,但卻是另一個(gè)關(guān)系S的主碼,則稱(chēng)F是關(guān)系R的外碼。關(guān)系的數(shù)學(xué)定義一、域1定義:域是一組具有相同類(lèi)型的值的集合。2域的基數(shù):域中所含數(shù)據(jù)的個(gè)數(shù)。二、笛卡爾積1定義:給定一組域D1,D2,D3,則D1×D2×D3稱(chēng)為笛卡爾積。2笛卡爾積D1×D2×D3對(duì)應(yīng)一個(gè)二維表,所含元組的個(gè)數(shù)等于各個(gè)域的基數(shù)之積。三、關(guān)系1定義:笛卡兒積的一部分元組稱(chēng)為關(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)系中主碼的有效值或空值。 五、專(zhuān)門(mén)的關(guān)系運(yùn)算1 選擇:從關(guān)系R中選擇滿足條件的元組。 2投影:從關(guān)系R中選擇若干屬性組成新的關(guān)系,并把新關(guān)系的重復(fù)元組去掉。3條件連接:將兩關(guān)系按一定條件連接成一個(gè)新關(guān)系 說(shuō)明:條件連接:兩關(guān)系可以沒(méi)有公共屬性,若有公共屬性,則新關(guān)系含有重復(fù)屬性。4自然連接:將兩關(guān)系按公共屬性連接成一個(gè)新的關(guān)系,并把新關(guān)系的重復(fù)屬性去掉。說(shuō)明: 自然連接:兩關(guān)系至少有一個(gè)公共屬性。 對(duì)于R的每個(gè)元組,S都從第一個(gè)元組開(kāi)始判斷,若兩元組的公共屬性值相同,則產(chǎn)生一個(gè)新元組添加到新關(guān)系中,最后把新關(guān)系中的重復(fù)屬性去掉。 關(guān)系數(shù)

7、據(jù)庫(kù)規(guī)范化理論 函數(shù)依賴(lài)一、有關(guān)概念:1函數(shù)依賴(lài):任給R(U),U為屬性集,x、y為U的子集,如果對(duì)于x的每個(gè)值,y有唯一確定的值與之對(duì)應(yīng),則稱(chēng)x決定y,或y函數(shù)依賴(lài)于x。2. 完全函數(shù)依賴(lài):若xy,且對(duì)于x的所有真子集x,都有x y,則稱(chēng)x完全決定y,或y完全函數(shù)依賴(lài)于x。結(jié)論:若xy,且x只包含一個(gè)屬性,則。3部分函數(shù)依賴(lài):若xy,且存在x的一個(gè)真子集x,滿足xy,則稱(chēng)x部分決定y,或y部分函數(shù)依賴(lài)于x。4傳遞函數(shù)依賴(lài):若xy,yz,但 y x,則二、平凡函數(shù)依賴(lài)與非平凡函數(shù)依賴(lài)設(shè)xy,如果y是x的子集,則該依賴(lài)是平凡的。如果y中至少有一個(gè)屬性不在x中,則該依賴(lài)是非平凡的。如果y中沒(méi)有一個(gè)

8、屬性在x中,則該依賴(lài)為完全非平凡的。 關(guān)系模式的規(guī)范化一、存在問(wèn)題 數(shù)據(jù)冗余大; 修改麻煩; 插入異常:應(yīng)該插入到DB中的數(shù)據(jù)插不進(jìn)去。如:新開(kāi)課程沒(méi)有學(xué)生選修時(shí),新開(kāi)課程的課程號(hào)、課程名插不進(jìn)去。 刪除異常:不應(yīng)該刪除的數(shù)據(jù)被刪掉。如選修某門(mén)課的學(xué)生畢業(yè)了,在刪除學(xué)生信息的同時(shí),把課程信息也刪除掉。結(jié)論:一個(gè)好的關(guān)系模式應(yīng)滿足: 冗余應(yīng)盡可能少; 應(yīng)盡可能避免插入、刪除異常; 消去關(guān)系中不合適的屬性依賴(lài)關(guān)系。二、關(guān)系模式的規(guī)范化1第一范式(1NF) 定義:若關(guān)系R的所有屬性不能再分,則R1NF 存在問(wèn)題 原因:存在非主屬性對(duì)主碼的部分依賴(lài)。 解決辦法:消除非主屬性對(duì)主碼的部分依賴(lài),將關(guān)系R一

9、分為二,將滿足完全依賴(lài)的屬性集組成一個(gè)關(guān)系;將滿足部分依賴(lài)的屬性集組成另一個(gè)關(guān)系; 2第二范式(2NF) 定義:若關(guān)系R1NF,且它的每個(gè)非主屬性都完全依賴(lài)于主碼,則稱(chēng)R2NF。3第三范式(3NF) 定義:若關(guān)系R2NF,且它的每個(gè)非主屬性都不傳遞依賴(lài)于主碼,則稱(chēng)R3NF。4結(jié)論 若R1NF,且主碼只含一個(gè)屬性,則R一定為2NF。 若R2NF,且只有01個(gè)非主屬性,則R一定為3NF。 3NF一般控制了數(shù)據(jù)冗余,一般避免了操作異常。 范式并非越高越好,適可而止。 數(shù)據(jù)庫(kù)設(shè)計(jì) 一、數(shù)據(jù)庫(kù)設(shè)計(jì)的步驟 需求分析:了解分析用戶(hù)的需要、要求。 概念結(jié)構(gòu)設(shè)計(jì):根據(jù)需求分析的結(jié)果畫(huà)概念模型(即E-R圖)。 邏

10、輯結(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è)部門(mén)或各個(gè)主要功能作為局部。2確定實(shí)體與屬性 屬性是不能再分的數(shù)據(jù)項(xiàng); 聯(lián)系只發(fā)生在兩實(shí)體之間; 原則上,能夠作為屬性,就不要作為實(shí)體。二、合并成總體E-R圖1消除各局部E-R圖的沖突問(wèn)題。2按公共實(shí)體名合并,生成初步E-R圖。3消除冗余的屬性和冗余的聯(lián)系,生成總體E-R圖。 邏輯結(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)系:

11、必須是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)系模式選擇合適的存儲(chǔ)結(jié)構(gòu)與存儲(chǔ)方式。選擇存儲(chǔ)結(jié)構(gòu):即決定每個(gè)表的記錄順序。選擇存取方式:即決定為哪些屬性建立非聚集索引,以便加快查找速度。一般把經(jīng)常查詢(xún)的屬性名指定為非聚集索引。2數(shù)據(jù)庫(kù)實(shí)施主要工作

12、:定義數(shù)據(jù)庫(kù)結(jié)構(gòu);組織數(shù)據(jù)入庫(kù);編寫(xiě)應(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ù)庫(kù)的各類(lèi)對(duì)象主數(shù)據(jù)文件(.mdf )次數(shù)據(jù)文件(.ndf ) 事務(wù)日志文件(.ldf ):用來(lái)記錄對(duì)數(shù)據(jù)庫(kù)對(duì)象的所有更新操作。2系統(tǒng)數(shù)據(jù)庫(kù)Master數(shù)據(jù)庫(kù)、Model數(shù)據(jù)庫(kù)二、創(chuàng)建數(shù)據(jù)庫(kù)1打開(kāi)數(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)出 創(chuàng)建和使用表 數(shù)據(jù)類(lèi)型1字符

13、型char(n)、varchar(n)、Text2統(tǒng)一碼字符型每個(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)識(shí)字段。3把某個(gè)字段指定為公式字段。二、設(shè)置約束1主鍵約束:每個(gè)表中只能有一列或一個(gè)組合被指定為主鍵,主鍵中的各個(gè)列不能為空值。2外鍵約束:創(chuàng)建外鍵約束,就是定義兩個(gè)表的永久關(guān)聯(lián),這兩個(gè)表分別稱(chēng)為主鍵表、外鍵表。外鍵表中外鍵的

14、值只能是主鍵表中主鍵的有效值或空值。3唯一性約束:主鍵約束與唯一性約束的區(qū)別是:(1) 在一個(gè)表中只能定義一個(gè)主鍵約束,但可定義多個(gè)唯一性約束;(2)指定為主鍵約束的列不能取空值,但指定為唯一性約束的列允許取空值。4唯一性約束:用于限制輸入到一列或多列的值的范圍,保證數(shù)據(jù)庫(kù)的數(shù)據(jù)完整性。5默認(rèn)值約束: T-SQL 一、SQL語(yǔ)言的特點(diǎn)SQL語(yǔ)言集數(shù)據(jù)定義、數(shù)據(jù)查詢(xún)、數(shù)據(jù)操縱、數(shù)據(jù)控制的功能于一體。所有的DBMS都支持SQL語(yǔ)言。 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ù)名二、

15、定義表1創(chuàng)建表 create table 表名(屬性名 類(lèi)型,屬性名 類(lèi)型)指定標(biāo)識(shí)字段:identity(標(biāo)識(shí)種子,標(biāo)識(shí)增量)指定公式字段:屬性名 as 表達(dá)式2刪除表 drop table表名, 表名三、select語(yǔ)句select */表達(dá)式表into 新表from 表名,表名where 條件group by 屬性名having 條件order by屬性名Asc/Desc1Select 子句 *代表所有屬性名 若一個(gè)屬性名來(lái)自多個(gè)表,則屬性名前須冠以表名,格式為:表名. 屬性名 設(shè)置表達(dá)式的別名: 表達(dá)式 As 別名 限制查詢(xún)結(jié)果的記錄行數(shù): all 返回全部記錄 top n 返回前面n

16、行記錄 distinct 表示取消重復(fù)行 說(shuō)明:top n只能放在關(guān)鍵字select的后面; all、distinct只能放在關(guān)鍵字select或聚合函數(shù)的后面。2Where 子句 in的格式:屬性名 in (常量,常量) like的格式:屬性名 like 通配字符串 在Where 子句中指定連接: Where 表名1. 屬性名=表名2. 屬性名3Order by子句 order by屬性名1 Asc/Desc, 屬性名2 Asc/Desc4聚合函數(shù)5Group by子句 使用Group by子句時(shí),Select 子句只能使用分組項(xiàng)字段和聚合函數(shù)6Having子句 Having子句只能跟在Gr

17、oup by子句之后,且只能使用聚合函數(shù)和分組項(xiàng)字段。 where子句放在Group by子句之前,甚至可以沒(méi)有Group by子句;且不能包含聚合函數(shù)。7into子句 功能:將查詢(xún)結(jié)果保存到新的基表中。一、 查詢(xún)的分類(lèi) 單表查詢(xún)連接查詢(xún)嵌套查詢(xún)五、數(shù)據(jù)操縱1insert語(yǔ)句(1)每次插入一條記錄 insert into 表名(屬性名表) values(表達(dá)式表)(2)插入子查詢(xún)的結(jié)果 insert into 表名(屬性名表) update 表名 set 屬性名=值,屬性名=值 where 條件 缺省where子句,默認(rèn)為更新全部記錄。3delete語(yǔ)句delete from 表名 where

18、 條件T-SQL程序設(shè)計(jì)基礎(chǔ) 一、常量: 字符型:由單引號(hào)括住 整型實(shí)型二、變量: 局部變量:由用戶(hù)定義和賦值,以 開(kāi)頭。 全局變量:由系統(tǒng)定義和賦值,以 開(kāi)頭。1.聲明局部變量Declare 變量名 類(lèi)型2.給局部變量賦值 使用set語(yǔ)句: Set 變量名=表達(dá)式 使用select 語(yǔ)句 Select 變量名=表達(dá)式,,變量名=表達(dá)式 from 表名 若表達(dá)式中含有屬性名,則必須使用from子句。3.輸出表達(dá)式的值:使用print 語(yǔ)句 Print 表達(dá)式使用select語(yǔ)句 Select 表達(dá)式,表達(dá)式 from 表名4局部變量的作用域: 只能在聲明它的批處理中使用。 批處理1什么叫批處理

19、? 一個(gè)腳本由一個(gè)或多個(gè)批處理組成,批處理以GO作為結(jié)束標(biāo)志。2批處理是腳本的編譯單位,當(dāng)一個(gè)批處理中的某個(gè)語(yǔ)句出現(xiàn)編譯錯(cuò)誤,則批處理中的任何語(yǔ)句均無(wú)法執(zhí)行。3當(dāng)一個(gè)批處理中的某個(gè)語(yǔ)句出現(xiàn)運(yùn)行錯(cuò)誤,則批處理中當(dāng)前語(yǔ)句和它之后的語(yǔ)句將無(wú)法執(zhí)行。 流程控制語(yǔ)句一、beginend語(yǔ)句二、if-else語(yǔ)句當(dāng)邏輯表達(dá)式包含子查詢(xún)時(shí),子查詢(xún)必須用括號(hào)括住。三、case表達(dá)式說(shuō)明:case表達(dá)式不是語(yǔ)句,不能單獨(dú)執(zhí)行。四、while語(yǔ)句2專(zhuān)用于循環(huán)體的語(yǔ)句: Break 強(qiáng)制退出while語(yǔ)句,執(zhí)行其后續(xù)語(yǔ)句。 Continue 返回while語(yǔ)句的入口。 Break、Continue必須放在循環(huán)體內(nèi),

20、并常與if-else語(yǔ)句結(jié)合使用。二、 其它語(yǔ)句1Return語(yǔ)句 2存儲(chǔ)過(guò)程 創(chuàng)建存儲(chǔ)過(guò)程 刪除存儲(chǔ)過(guò)程 函數(shù)1創(chuàng)建函數(shù)create function 函數(shù)名(形參名 類(lèi)型) returns 類(lèi)型asbegin函數(shù)體 End注: 函數(shù)體最后一條語(yǔ)句必須是return語(yǔ)句。 兩類(lèi)函數(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)用 一、查詢(xún)的分類(lèi) 單表查詢(xún)連接查詢(xún)嵌套查詢(xún)一、 連接查詢(xún):在where子句中指定連接1內(nèi)連接:where 表名1.屬性名=表名2.屬

21、性名2自身連接:給一個(gè)表取兩個(gè)別名,where子句的格式為:where 別名1.屬性名=別名2.屬性名3左外連接:where 表名1.屬性名*=表名2.屬性名 意義:查詢(xún)結(jié)果包含了表1的全部記錄和表2滿足條件的記錄。4右外連接:where 表名1.屬性名=*表名2.屬性名 意義:查詢(xún)結(jié)果包含了表2的全部記錄和表1滿足條件的記錄。三、連接查詢(xún):在from子句中指定連接1內(nèi)連接:from 表名1 inner join 表名2 on 條件2左外連接:from 表名1 left outer join 表名2 on 條件3右外連接:from 表名1 right outer join 表名2 on 條件4

22、完全外連接:from 表名1 full outer join 表名2 on 條件5交叉連接四、嵌套查詢(xún) 事務(wù)處理1什么叫事務(wù)? 事務(wù)是用戶(hù)定義的一組操作序列。 事務(wù)是并發(fā)控制的基本單位。 一個(gè)事務(wù)包含的諸操作要么都執(zhí)行,要么都不執(zhí)行。1 事務(wù)的屬性 原子性:指事務(wù)中包含的諸操作要么都執(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ǔ)過(guò)程中,使用SQL語(yǔ)句定義和使用游標(biāo)

23、。在前臺(tái)應(yīng)用程序中,使用主語(yǔ)言實(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 語(yǔ)句 forward_only(只進(jìn)游標(biāo)):只能進(jìn)行next操作,缺省為forward_only。 scroll (滾動(dòng)游標(biāo))global /local:缺省為:global2打開(kāi)游標(biāo) open 游標(biāo)名 打開(kāi)游標(biāo)時(shí),游標(biāo)指向查詢(xún)結(jié)果集的第一條記錄之前。3提取游標(biāo) fetch next / prior / first /last from游標(biāo)名 i

24、nto 局部變量名表 缺省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ù)表比作一本書(shū),那么表的索引就是這本書(shū)的目錄。可見(jiàn),索引使用戶(hù)能快速訪問(wèn)數(shù)據(jù)表的特定信息。 索引包括兩項(xiàng):索引字段值、原記錄號(hào) 索引必須依附于某個(gè)基本表,不能單獨(dú)存在。二、索引的類(lèi)型:聚集索引:影響數(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語(yǔ)句創(chuàng)建索引Create unique clustered/nonclustered index 索引名 On 表名(屬性名asc/desc, 屬性名asc/desc)注:若未指定clustered,則創(chuàng)建非聚集索引;若未指定排序方式,則為ASC;text,ntext類(lèi)型的字段不能

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論