熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL Server >> 正文

SQL Server 2000的視圖中必須小心使用*符號[2]

2013-11-15 14:49:24  來源: SQL Server 

  查詢的結果如下

  一切正常這個時候需求發生了變化我們需要改動vCustomersA改動後的腳本如下(為了說明問題我們只是把CompanyName和ContactName互換一下位置)

  改動後的視圖vCustomersA
  alter view vCustomersA
  as
  select CustomerID ContactNameCompanyNameContactTitle
  AddressCityRegionPostalCodeCountryPhoneFax
  from dboCustomers
  go

  這個時候當我們再次使用視圖vCustomersB查詢客戶ID為ALFKI的資料的時候錯誤已經悄然來臨你注意到了嗎?讓我們來看一下這兩個視圖的查詢結果吧查詢語句如下

  select * from vCustomersA where CustomerID = ALFKI
  select * from vCustomersB where CustomerID = ALFKI

  查詢的結果發生變化你注意到數據的異常了嗎?使用視圖vCustomersB查詢的結果出現了錯誤CompanyName顯示的資料是Maria Anders而在視圖vCustomersA查詢的結果中CompanyName是Alfreds Futterkiste我們僅僅是在vCustomersA中互換了兩個字段的位置再次使用vCustomersB查詢數據卻發生了數據錯位的現象這是什麼原因導致的呢?

[]  []  []  []  []  


From:http://tw.wingwit.com/Article/program/SQLServer/201311/22387.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.