IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置:首頁數(shù)據(jù)庫MSSQL → 通過視圖修改數(shù)據(jù)時所應(yīng)掌握的基本準(zhǔn)則

通過視圖修改數(shù)據(jù)時所應(yīng)掌握的基本準(zhǔn)則

時間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評論(0)

假如不使用INSTEAD OF觸發(fā)器或可更新分區(qū)視圖而是通過視圖來修改數(shù)據(jù),那么再修改之前,請考慮下列準(zhǔn)則:

◆如果在視圖定義中使用了 WITH CHECK OPTION 子句,則所有在視圖上執(zhí)行的數(shù)據(jù)修改語句都必須符合定義視圖的 SELECT 語句中所設(shè)定的條件。如果使用了 WITH CHECK OPTION 子句,修改行時需注意不讓它們在修改完成后從視圖中消失。任何可能導(dǎo)致行消失的修改都會被取消,并顯示錯誤信息。

sql server 必須能夠明確地解析對視圖所引用基表中的特定行所做的修改操作。不能在一個語句中對多個基礎(chǔ)表使用數(shù)據(jù)修改語句。因此,列在 UPDATE 或 INSERT 語句中的列必須屬于視圖定義中的同一個基表。

◆對于基礎(chǔ)表中需更新而又不允許空值的所有列,它們的值在 INSERT 語句或 DEFAULT 定義中指定。這將確;A(chǔ)表中所有需要值的列都可以獲取值。

◆在基礎(chǔ)表的列中修改的數(shù)據(jù)必須符合對這些列的約束,如為空性、約束、DEFAULT 定義等。例如,如果要刪除一行,則相關(guān)表中的所有基礎(chǔ) FOREIGN KEY 約束必須仍然得到滿足,刪除操作才能成功。

◆分布式分區(qū)視圖(遠(yuǎn)程視圖)不能使用鍵集驅(qū)動游標(biāo)更新。此項限制可通過在基礎(chǔ)表上而不在視圖本身上聲明游標(biāo)得到解決。

此外,如果在視圖中刪除數(shù)據(jù):

◆在視圖定義的 FROM 子句中只能列出一個表。

不能在視圖中與text、ntext 或 image 列一起使用 READTEXT 和 WRITETEXT 語句。

關(guān)鍵詞標(biāo)簽:數(shù)據(jù)

相關(guān)閱讀

文章評論
發(fā)表評論

熱門文章 SqlServer2005對現(xiàn)有數(shù)據(jù)進(jìn)行分區(qū)具體步驟SqlServer2005對現(xiàn)有數(shù)據(jù)進(jìn)行分區(qū)具體步驟sql server系統(tǒng)表損壞的解決方法sql server系統(tǒng)表損壞的解決方法MS-SQL2005服務(wù)器登錄名、角色、數(shù)據(jù)庫用戶MS-SQL2005服務(wù)器登錄名、角色、數(shù)據(jù)庫用戶Access、SQL Server、Oracle常見應(yīng)用的區(qū)別Access、SQL Server、Oracle常見應(yīng)用的區(qū)別

相關(guān)下載

人氣排行 如何遠(yuǎn)程備份(還原)SQL2000數(shù)據(jù)庫SQL2000數(shù)據(jù)庫遠(yuǎn)程導(dǎo)入(導(dǎo)出)數(shù)據(jù)配置和注冊O(shè)DBC數(shù)據(jù)源-odbc數(shù)據(jù)源配置教程SQL2000和SQL2005數(shù)據(jù)庫服務(wù)端口查看或修改SQL Server 2005降級到2000的正確操作步驟修改Sql Server唯一約束教程淺談JSP JDBC來連接SQL Server 2005的方法SQL Server創(chuàng)建表語句介紹