新聞中心
SQL Server視圖相信大家都比較熟悉了,下面就為您介紹SQL Server視圖數(shù)據(jù)更改的常見限制條件,如果您對(duì)SQL Server視圖方面感興趣的話,不妨一看。

成都創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)穆棱,10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):13518219792
當(dāng)用戶更新視圖中的數(shù)據(jù)時(shí),其實(shí)更改的是其對(duì)應(yīng)的數(shù)據(jù)表的數(shù)據(jù).無(wú)論是對(duì)視圖中的數(shù)據(jù)進(jìn)行更改,還是在視圖中插入或者刪除數(shù)據(jù),都是類似的道理.但是,不是所有SQL Server視圖都可以進(jìn)行更改.如下面的這些視圖,在SQL Server數(shù)據(jù)庫(kù)中就不能夠直接對(duì)其內(nèi)容進(jìn)行更新,否則,系統(tǒng)會(huì)拒絕這種非法的操作.
(1) Group By子句
如在一個(gè)SQL Server視圖中,若采用Group By子句,對(duì)視圖中的內(nèi)容進(jìn)行了匯總。則用戶就不能夠?qū)@張視圖進(jìn)行更新。這主要是因?yàn)椴捎肎roup By子句對(duì)查詢結(jié)果進(jìn)行匯總在后,視圖中就會(huì)丟失這條紀(jì)錄的物理存儲(chǔ)位置。如此,系統(tǒng)就無(wú)法找到需要更新的紀(jì)錄。若用戶想要在視圖中更改數(shù)據(jù),則數(shù)據(jù)庫(kù)管理員就不能夠在視圖中添加這個(gè)Group BY分組語(yǔ)句。
(2) Distinct關(guān)鍵字
如不能夠使用Distinct關(guān)鍵字。這個(gè)關(guān)鍵字的用途就是去除重復(fù)的紀(jì)錄。如沒有添加這個(gè)關(guān)鍵字的時(shí)候,視圖查詢出來(lái)的紀(jì)錄有250條。添加了這個(gè)關(guān)鍵字后,數(shù)據(jù)庫(kù)就會(huì)剔除重復(fù)的紀(jì)錄,只顯示不重復(fù)的50條紀(jì)錄。此時(shí),若用戶要改變其中一個(gè)數(shù)據(jù),則數(shù)據(jù)庫(kù)就不知道其到底需要更改哪條紀(jì)錄。因?yàn)橐晥D中看起來(lái)只有一條紀(jì)錄,而在基礎(chǔ)表中可能對(duì)有的紀(jì)錄有幾十條。為此,若在視圖中采用了Distinct關(guān)鍵字的話,就無(wú)法對(duì)視圖中的內(nèi)容進(jìn)行更改。
(3) AVG、MAX等函數(shù)
如果在視圖中有AVG、MAX等函數(shù),則也不能夠?qū)ζ溥M(jìn)行更新。如在一張視圖中,其采用了SUN函數(shù)來(lái)匯總員工的工資時(shí),此時(shí),就不能夠?qū)@張表進(jìn)行更新。這是數(shù)據(jù)庫(kù)為了保障數(shù)據(jù)一致性所添加的限制條件。
小結(jié): 可見,試圖雖然方便、安全,但是,其仍然不能夠代替表的地位。當(dāng)需要對(duì)一些表中的數(shù)據(jù)進(jìn)行更新時(shí),我們往往更多的通過(guò)對(duì)表的操作來(lái)完成。因?yàn)閷?duì)視圖內(nèi)容進(jìn)行直接更改的話,需要遵守一些限制條件。在實(shí)際工作中,更多的處理規(guī)則是通過(guò)前臺(tái)程序直接更改后臺(tái)基礎(chǔ)表。至于這些表中數(shù)據(jù)的安全性,則要依靠前臺(tái)應(yīng)用程序來(lái)保護(hù)。確保更改的準(zhǔn)確性、合法性。
【編輯推薦】
帶您了解SQL Server分頁(yè)查詢語(yǔ)句
使用SQL Server查詢語(yǔ)句實(shí)現(xiàn)簡(jiǎn)單查詢
SQL Server連接錯(cuò)誤的處理方法
SQL Server管理相關(guān)的注冊(cè)表技巧
SQL Server服務(wù)器角色簡(jiǎn)介
本文名稱:SQLServer視圖數(shù)據(jù)更改的常見限制條件
文章網(wǎng)址:http://m.fisionsoft.com.cn/article/coscgsh.html


咨詢
建站咨詢
