第5章實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖_第1頁(yè)
第5章實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖_第2頁(yè)
第5章實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖_第3頁(yè)
第5章實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖_第4頁(yè)
第5章實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖_第5頁(yè)
已閱讀5頁(yè),還剩37頁(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、 視圖是從一個(gè)或多個(gè)表或視圖中導(dǎo)出的表,其結(jié)構(gòu)合數(shù)據(jù)是建立在對(duì)表的查詢(xún)基礎(chǔ)上的和表。和表一樣,視圖也是包括幾個(gè)被定義的數(shù)據(jù)列和多個(gè)數(shù)據(jù)行,但就本質(zhì)而言,這些數(shù)據(jù)列和數(shù)據(jù)行來(lái)源于其所引用的表。所以視圖不是真實(shí)存在的基礎(chǔ)表而是一張?zhí)摂M的表,與表不同的是,視圖本身并不存儲(chǔ)視圖中的數(shù)據(jù),而是存儲(chǔ)在視圖所引用的表中。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 學(xué)生成績(jī)信息的視圖 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 基表1“學(xué)生信息” 基表2“學(xué)生成績(jī)” 查詢(xún)語(yǔ)句執(zhí)行結(jié)果 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 【

2、實(shí)例5.1】在查詢(xún)分析器下建立“學(xué)生視圖”的視圖。 操作步驟:操作步驟: 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 通過(guò)本章的實(shí)例,可見(jiàn)建立視圖可以簡(jiǎn)化查詢(xún),此外,通過(guò)視圖還可以實(shí)現(xiàn)隱蔽數(shù)據(jù)庫(kù) 復(fù)雜性、為用戶(hù)集中提取數(shù)據(jù)、簡(jiǎn)化數(shù)據(jù)庫(kù)用戶(hù)管理等優(yōu)點(diǎn)。 1. 隱蔽數(shù)據(jù)庫(kù)的復(fù)雜性 2. 為用戶(hù)集中提取數(shù)據(jù) 3. 簡(jiǎn)化用戶(hù)權(quán)限的管理 4. 方便數(shù)據(jù)的交換第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 視圖的命名必須遵循標(biāo)志符規(guī)則,必須對(duì)每個(gè)用戶(hù)都是惟一的。視圖名稱(chēng)不能和創(chuàng)建該視圖的用戶(hù)的其他任何一個(gè)表的名稱(chēng)相同。 在默認(rèn)狀態(tài)下,視圖中的列名繼承了它們基

3、表中的相應(yīng)列名,對(duì)于下列情況則需要重新 指定列的別名。 (1) 視圖中的某些列來(lái)自表達(dá)式、函數(shù)或常量時(shí)。 (2) 當(dāng)視圖所引用不同基表的列中有相同列名時(shí)。 (3) 希望給視圖中的列指定新的列名時(shí)。 (4) 視圖的定義可以加密,以保證其定義不會(huì)被任何人(包括視圖的擁有者)獲得。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 【5.2】在企業(yè)管理器中創(chuàng)建“學(xué)生成績(jī)信息”視圖,該視圖中從基表1學(xué)生信息和基表2學(xué)生成績(jī)中選擇所有學(xué)號(hào)、姓名、課程號(hào)、期中成績(jī)和期末成績(jī)。操作步驟:操作步驟: 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)

4、SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析: 在窗口內(nèi)容由上至下分為四部分:第一部分顯示視圖的基表及其對(duì)應(yīng)外鍵關(guān)系(有關(guān)外鍵的內(nèi)容在第8章);第二部分顯示視圖中的列,可以在“準(zhǔn)則”處輸入每一列對(duì)應(yīng)的條件,如WHERE語(yǔ)句,并可以加入排序型,如果需要使用GROUP語(yǔ)句對(duì)視圖數(shù)據(jù)進(jìn)行分組,則可以單擊列名,在彈出的快捷菜單 中選擇“分組”;第三部分顯示創(chuàng)建視圖所對(duì)應(yīng)的T-SQL語(yǔ)句,可以在這里對(duì)查詢(xún)條件進(jìn)行 修改:第四部分為視圖運(yùn)行結(jié)果窗口,視圖建立完畢后,在圖5.8所示窗口內(nèi)右擊并在彈出 的快捷菜單中選擇“運(yùn)行”(或直接單擊“運(yùn)行”按鈕 ),可以在此查看視圖的數(shù)據(jù)內(nèi)容。

5、使用多個(gè)基表,建立視圖,最好建立關(guān)聯(lián)后再用,否則會(huì)使視圖的數(shù)據(jù)重復(fù)。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 【實(shí)例5.3】 在查詢(xún)分析器下建立“課程查詢(xún)視圖”,該視圖中包含所有學(xué)號(hào)、課程號(hào)、課程名稱(chēng)的任課教師及他們平時(shí)成績(jī)。 根據(jù)題的要求,該視圖要對(duì)表“學(xué)生信息”、“課程”和“學(xué)生成績(jī)”以主外鍵進(jìn)行自然連接,并對(duì)視圖文本加密,使用戶(hù)看不到定義的文本。操作步驟:操作步驟:第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析:命令格式:命令格式: WITH CHECK OPTION 其中WITH ENCRYPTION子句對(duì)視圖進(jìn)行

6、加密,WITH CHECK OPTION表示對(duì)視圖進(jìn)行UPDATE、INSERT和DELETE操作時(shí),要保證所操作的行,滿(mǎn)足視圖定義中的條件,即只有滿(mǎn)足視圖定義條件的操作才能執(zhí)行。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 SELECT語(yǔ)句可以是任何復(fù)雜的查詢(xún)語(yǔ)句,但通常不允許包含ORDER BY子句和DISTINCT短語(yǔ)。 如果CREATE VIEW語(yǔ)句沒(méi)有指定視圖列名,則該視圖的列名默認(rèn)為SELECT語(yǔ)句目標(biāo)列中各字段的列名。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 在企業(yè)管理器下或通過(guò)SQL語(yǔ)句都可以查看視圖的定義信息,但是,如果

7、在視圖的定義語(yǔ)句中帶有WITH ENCRYPTION子句,表示SQL Server對(duì)建立視圖的語(yǔ)句文本進(jìn)行了加密,則無(wú)法看到視圖的定義語(yǔ)句。即使是視圖的擁有者和系統(tǒng)管理員也不能看到。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 1使用企業(yè)管理器查看【實(shí)例5.4】查看例5.1創(chuàng)建的“學(xué)生成績(jī)信息”視圖為例說(shuō)明其操作過(guò)程。操作步驟:操作步驟: 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 2. 使用系統(tǒng)存儲(chǔ)過(guò)程查看視圖信息【實(shí)例5.5】 查看視圖學(xué)生成績(jī)信息的名稱(chēng)、列名、擁有者、創(chuàng)建時(shí)間等信息,查看視圖的關(guān)聯(lián)性,查看定義視圖的T-SQL語(yǔ)句。操作步

8、驟:操作步驟:第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析:由上例可知使用T-SQL創(chuàng)建表需要一定的格式,在這里我們給出使用Transact-SQL語(yǔ)言創(chuàng)建表,語(yǔ)法如下:(1)使用系統(tǒng)存儲(chǔ)過(guò)程顯示視圖的名稱(chēng)、列名、擁有者、創(chuàng)建時(shí)間、列的屬性等信息。 命令格式:命令格式: (2)使用系統(tǒng)存儲(chǔ)過(guò)程顯示定義視圖的T-SQL語(yǔ)句。 命令格式:命令格式:(3)顯示視圖與其他表或視圖的關(guān)聯(lián)性信息(見(jiàn)第10章數(shù)據(jù)完整性)。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 1. 使用企業(yè)管理器修改視圖【實(shí)例5.6】使用企業(yè)管理器修改視圖“學(xué)生成

9、績(jī)信息”中將期中成績(jī)刪除。操作步驟:操作步驟: 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析: 在設(shè)計(jì)視圖窗口,可以添加或刪除視圖的基表及其列,修改視圖屬性。例如,右擊一個(gè)表的名稱(chēng),在彈出的菜單中選擇“刪除”,則會(huì)從視圖的定義中除去該表。其他操作與建立視圖的方法類(lèi)似,這里不再贅述。 也可以在圖5.12所示窗口的快捷菜單中選擇“屬性”命令,在彈出的“查看屬性”窗口中直接修改創(chuàng)建視圖的T-SQL語(yǔ)句。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 2. 使用T-SQIL語(yǔ)句修改視圖【實(shí)例5.7】在查詢(xún)分析器中,建立一個(gè)“查詢(xún)”的視

10、圖,然后對(duì)視圖名“查詢(xún)”更改為“課程視圖”并增加一個(gè)平時(shí)成績(jī)的列。操作步驟:操作步驟: 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析: ,只有數(shù)據(jù)庫(kù)的所有者或視圖的所有者能夠?qū)σ晥D進(jìn)行重命名工作。修改視圖名稱(chēng)與修改表名稱(chēng)所用方法相同。 命令格式:命令格式: 修改一個(gè)已經(jīng)創(chuàng)建視圖的定義可以使用T-SQL語(yǔ)句。 命令格式:命令格式: WITH ENCRYPTION WITH CHECK OPTION 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 當(dāng)不再需要某個(gè)已經(jīng)存在的視圖時(shí),可以刪除它。刪除視圖后,表和視圖所基于的數(shù)據(jù)并不受影響

11、。1使用企業(yè)管理器刪除視圖【實(shí)例實(shí)例5.85.8】刪除沒(méi)有的視圖如刪除“課程查詢(xún)視圖1”。操作步驟:操作步驟: 在企業(yè)管理器中選中“課程查詢(xún)視圖1”右擊,在彈出的快捷菜單中選擇“刪除”命令,即可刪除選中的視圖。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 2使用T-SQL語(yǔ)言刪除視圖【實(shí)例實(shí)例5.95.9】刪除沒(méi)有的視圖如刪除“課程查詢(xún)視圖2”、“課程查詢(xún)視圖a”。 操作步驟:操作步驟:(1)啟動(dòng)“查詢(xún)分析器”,輸入如下SQL語(yǔ)句:DROP VIEW 課程查詢(xún)視圖2, 課程查詢(xún)視圖aGO(2)按“F5”鍵或單擊工具欄“執(zhí)行查詢(xún)”圖標(biāo)執(zhí)行。歸納分析:歸納分析:由上例可知

12、使用T-SQL刪除視圖。命令格式:命令格式:,視圖名,視圖名n使用該語(yǔ)句一次可以刪除多個(gè)視圖。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 對(duì)視圖進(jìn)行修改操作包括插入、修改和刪除類(lèi)操作。由于視圖是不存儲(chǔ)數(shù)據(jù)的虛表,所以對(duì)視圖數(shù)據(jù)的修改、最終轉(zhuǎn)換為對(duì)基表數(shù)據(jù)的修改。 5.41 通過(guò)視圖添加表中的數(shù)據(jù)【實(shí)例實(shí)例5.105.10】在視圖學(xué)生成績(jī)信息中插入數(shù)據(jù)學(xué)號(hào)=1013,姓名=王東,課程號(hào)=202,期中成績(jī)=89,期末成績(jī)=87。然后分別查詢(xún)表學(xué)生習(xí)信息、學(xué)生成績(jī)和視圖學(xué)生成績(jī)信息,看看有什么結(jié)果。操作步驟:操作步驟:第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖

13、數(shù)據(jù)庫(kù)中的視圖 學(xué)號(hào)和姓名的數(shù)據(jù)取自基表學(xué)生信息,課程號(hào),期中成績(jī),期末成績(jī)的數(shù)據(jù)取自基表學(xué)生成績(jī)。 由于沒(méi)有違反基表中的約束條件,所以數(shù)據(jù)全部成功地插入到各個(gè)基表中。但是,查詢(xún)視圖學(xué)生成績(jī)信息將看不到這些數(shù)據(jù),因?yàn)閿?shù)據(jù)只是通過(guò)視圖分別孤立地插入到表 學(xué)生信息和學(xué)生成績(jī)中,而插入的數(shù)據(jù)并不符 合建立視圖的條件。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析: 在視圖中添加數(shù)據(jù),就是對(duì)視圖的基表添加數(shù)據(jù),添加數(shù)據(jù)也使用INSERT命令。用法與向表中添加數(shù)據(jù)相同。但要(1) 當(dāng)視圖有多個(gè)基表時(shí),不能在一個(gè)語(yǔ)句中對(duì)視圖中的多個(gè)基表同時(shí)進(jìn)行修改,亦即一次只能

14、對(duì)視圖的一個(gè)基表內(nèi)的數(shù)據(jù)進(jìn)行增、刪、改操作。(2) 由于視圖中可能僅僅包含基表中的部分列,因此通過(guò)視圖向基表中插入數(shù)據(jù)時(shí),要求基表中的其他非視圖列應(yīng)該是允許空(NULL)或含有默認(rèn)值。(3) 插入的數(shù)據(jù)必須滿(mǎn)足基表的約束條件。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 使用UPDATE命令可以通過(guò)視圖修改基表中的數(shù)據(jù),修改數(shù)據(jù)的方法與修改表中數(shù)據(jù)的方法相同。與通過(guò)視圖向基表插入數(shù)據(jù)一樣,也要注意一次只能修改一個(gè)表,且修改后的數(shù)據(jù)不得違反基表中的各種約束關(guān)系。【實(shí)例實(shí)例5.115.11】將視圖“學(xué)生視圖”中的數(shù)據(jù),學(xué)號(hào)=1010,姓名改為王梅。操作步驟:操作步驟:(1

15、)啟動(dòng)“查詢(xún)分析器”,輸入如下SQL語(yǔ)句: UPDATE 學(xué)生視圖 SET 姓名=王梅 WHERE 學(xué)號(hào)=1010 GO(2)按“F5”鍵或單擊工具欄“執(zhí)行查詢(xún)”圖標(biāo)執(zhí)行。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析: 首先學(xué)號(hào)=1010這條記錄一定要在視圖中存在,如果它僅存在于視圖的基表中而不存在于視圖中,則基表中的數(shù)據(jù)將無(wú)法更改。其次,盡管一個(gè)SET語(yǔ)句可以為多個(gè)列變量賦值,但它們必須來(lái)自同一個(gè)表。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 【實(shí)例實(shí)例5.125.12】刪除視圖“學(xué)生視圖”中黎明的數(shù)據(jù)。(假設(shè)所刪除的

16、數(shù)據(jù)已經(jīng)存在)。操作步驟:操作步驟: (1)啟動(dòng)“查詢(xún)分析器”,輸入如下SQL語(yǔ)句: DELETE 學(xué)生視圖 WHERE 姓名=黎明 GO第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 歸納分析:歸納分析: 在視圖中使用DELETE命令刪除數(shù)據(jù)就是刪除視圖基表中的對(duì)應(yīng)的數(shù)據(jù)。語(yǔ)法與在表中刪除數(shù)據(jù)相同。在視圖中刪除數(shù)據(jù)得以進(jìn)行的條件是視圖只能有一個(gè)基表,且所要?jiǎng)h除的數(shù)據(jù)必須存在于視圖中(即不違反視圖的建立條件)。刪除視圖數(shù)據(jù)是針對(duì)視圖的行進(jìn)行的,亦即DELETE命令將刪除視圖一行中的所有數(shù)據(jù),實(shí)際上是刪除了基表中對(duì)應(yīng)于該視圖中某一行(或幾行)的數(shù)據(jù)。第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQ

17、L Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 本章主要介紹視圖應(yīng)用,通過(guò)一系列實(shí)例,講述了創(chuàng)建、修改以及刪除視圖的方法。另外,還對(duì)視圖數(shù)據(jù)的查詢(xún)、修改、更新、插入和刪除做了詳細(xì)介紹。通過(guò)本章學(xué)習(xí),應(yīng)該掌握以下內(nèi)容: (1) 視圖提供了一種查看數(shù)據(jù)庫(kù)表數(shù)據(jù)的另外一種方法,定義視圖就是指定一個(gè)查詢(xún)語(yǔ)句,然后將查詢(xún)結(jié)果作為視圖。通過(guò)視圖,可以對(duì)不同的用戶(hù)提供同一個(gè)表的不同數(shù)據(jù)表現(xiàn)。 (2) 視圖是邏輯上的概念,表是實(shí)際存在的數(shù)據(jù)的存儲(chǔ)集合。視圖既可以定義在表上,也可以定義在另外一個(gè)視圖上,但是,為了提高視圖的性能,建議視圖不要?jiǎng)?chuàng)建在其他視圖之上,一般對(duì)一個(gè)表建立一個(gè)視圖。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL

18、 Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 (3) 使用視圖具有很多優(yōu)點(diǎn),如集中用戶(hù)數(shù)據(jù)、屏蔽數(shù)據(jù)查詢(xún)的復(fù)雜性、簡(jiǎn)化管理和向其他應(yīng)用程序輸出而重新組織數(shù)據(jù)等。(4) 創(chuàng)建視圖有許多方法,如利用向?qū)?chuàng)建視圖、使用語(yǔ)句CREATE VIEW創(chuàng)建視圖以及使用企業(yè)管理器工具創(chuàng)建。 (5) 修改和刪除視圖語(yǔ)句分別為ALTER VIEW和DROP VIEW。(6) 視圖中的記錄可以進(jìn)行查詢(xún)、插入、刪除和更新。(7) 使用系統(tǒng)表sysobjects和sysconmaents以及企業(yè)管理器查看視圖定義信息。(8) 如果視圖使用“WITH ENCRYPTI ON”選項(xiàng),將對(duì)定義視圖進(jìn)行加密。(9) 修改和更新視

19、圖數(shù)據(jù)必須只有一定的條件和權(quán)限。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 1.創(chuàng)建視圖注意的問(wèn)題 視圖的命名必須遵循標(biāo)志符規(guī)則,必須對(duì)每個(gè)用戶(hù)都是惟一的。視圖名稱(chēng)不能和創(chuàng)建該視圖的用戶(hù)的其他任何一個(gè)表的名稱(chēng)相同。 在默認(rèn)狀態(tài)下,視圖中的列名繼承了它們基表中的相應(yīng)列名,對(duì)于下列情況則需要重新 指定列的別名。 (1) 視圖中的某些列來(lái)自表達(dá)式、函數(shù)或常量時(shí)。 (2) 當(dāng)視圖所引用不同基表的列中有相同列名時(shí)。 (3) 希望給視圖中的列指定新的列名時(shí)。 (4) 視圖的定義可以加密,以保證其定義不會(huì)被任何人(包括視圖的擁有者)獲得。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server

20、數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 2.通過(guò)視圖修改表數(shù)據(jù)應(yīng)注意的問(wèn)題 對(duì)視圖進(jìn)行的修改操作有以下限制。(1)若視圖的字段來(lái)自表達(dá)式或常量,則不允許對(duì)該視圖執(zhí)行INSERT和UPDATE操作,但允許執(zhí)行DELETE操作。(2)若視圖的字段來(lái)自集合函數(shù),則此視圖不允許修改操作。(3)若視圖定義中含有GROUP BY 子句,則此視圖不允許修改操作。(4)若視圖定義中含有DISTINCT 短句,則此視圖不允許修改操作。(5)一個(gè)不允許修改操作視圖上定義的視圖,也不允許修改操作。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 1 為什么說(shuō)視圖是虛表?視圖的數(shù)據(jù)存在什么地方?2 視圖中

21、的數(shù)據(jù)是否可以取自一張表的全部數(shù)據(jù)或部分?jǐn)?shù)據(jù)?是否可以取自多張表的全部數(shù)據(jù)或部分?jǐn)?shù)據(jù)?是否可以取自一個(gè)表或幾個(gè)表的某幾列數(shù)據(jù)?是否可以取自一個(gè)表或幾個(gè)表的某幾行數(shù)據(jù)?如果上述答案為是,如何實(shí)現(xiàn)?3創(chuàng)建視圖時(shí)應(yīng)注意的問(wèn)題是什么?4. 創(chuàng)建視圖窗口內(nèi)容由上至下分為4部分,各自的作用是什么?第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 5. sp_help 、 sp_depends 、 sp_helptext 查看的各自的含義是什么?6. 為什么使用sp_helptext 查看不到視圖的定義文本?7. 在視圖中如何插入、修改和刪除數(shù)據(jù),各有什么條件?8. 在視圖中添加數(shù)據(jù),應(yīng)

22、注意的問(wèn)題是什么?9. 視圖的優(yōu)缺點(diǎn)是什么?10通過(guò)視圖修改表數(shù)據(jù)應(yīng)注意的問(wèn)題是什么? 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 (1) 掌握創(chuàng)建視圖的各種方法,理解視圖是基于數(shù)據(jù)表的虛擬的表。 (2) 熟練掌握企業(yè)管理器和用T-SQL語(yǔ)句編寫(xiě)的操作過(guò)程。(3) 熟練掌握多表的視圖建立、修改視圖的結(jié)構(gòu)、視圖的記錄。(4) 熟練掌握各種查看視圖信息的內(nèi)容。 SQL Server 2000的運(yùn)行、管理環(huán)境。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 (1) 在企業(yè)管理器中創(chuàng)建視圖 利用基表“學(xué)生信息”、“課程”和“學(xué)生成績(jī)”創(chuàng)建“練習(xí)視圖1”

23、視圖,并運(yùn)行后查看結(jié)果,如表5.13所示。 第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 利用基表“學(xué)生信息”、“課程”和“學(xué)生成績(jī)”創(chuàng)建“練習(xí)視圖2”視圖,條件是任課教師為“章華”的記錄并將文本加密,并運(yùn)行后查看結(jié)果,如表5.14所示。第第5章章 實(shí)現(xiàn)實(shí)現(xiàn)SQL Server數(shù)據(jù)庫(kù)中的視圖數(shù)據(jù)庫(kù)中的視圖 (2)在查詢(xún)分析器中用T-SQL語(yǔ)句編寫(xiě)。 利用基表“學(xué)生成績(jī)”創(chuàng)建“練習(xí)視圖3”視圖,要求的列名為:課程號(hào),班級(jí),期中成績(jī),期末成績(jī),平時(shí)成績(jī),并運(yùn)行結(jié)果。 利用基表“學(xué)生成績(jī)”創(chuàng)建“練習(xí)視圖4”視圖,要求的條件為:期中成績(jī)?cè)?0和90之間的列名為:學(xué)號(hào),課程號(hào),班級(jí),期中成績(jī),期末成績(jī)。并運(yùn)行結(jié)果。 利用基表“學(xué)生成績(jī)”創(chuàng)建“練習(xí)視圖5”視圖,要求的列名為:課程號(hào),班級(jí)

溫馨提示

  • 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)論