SQL Server 2005資料庫IN運算的一個錯誤
這篇論壇文章(賽迪網技術社群)主要介紹了SQL Server 2005資料庫中,有關IN運算的一個錯誤示例,具體內容如下:
/*
測試in運算容易出錯的一種情況,就是在子查詢中的查詢列實際不存在,會返回所有資料。
*/
create table t_1(uid int)
create table t_2(id int)
insert into t_1
select 1
union all
select 2
union all
select 3
union all
select 4
insert into t_2
select 1
union all
select 2
union all
select 7
union all
select 8
select * from t_1 where uid in (select [uid] from t_2 where id like '[0-9]')
drop table t_1,t_2
/**//*
從例子中能夠看出,子查詢中如果使用本來不存在的列,如果編譯沒報錯的話,查詢的結果是錯誤的,並且不會有任何提示。還有就是子查詢中的這個列名,並不是隨便寫就行,要重現這個錯誤,需要這個列名在t_1表中存在。
當然,如果單獨執行select [user_id] from t_2 where id like '[0-9]' ,就會報錯:
訊息207,級別16,狀態1,第26 行
列名'user_id' 無效。
*/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-567503/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server DACPAC資料庫部署錯誤SQLServer資料庫
- SQL Server 2005聯機叢書的一個錯誤:UPDATE STATISTICS ONSQLServer
- 用SQL Server資料庫處理資料層錯誤SQLServer資料庫
- sql server 2005資料庫快照SQLServer資料庫
- sql server資料庫附加錯誤的解決過程SQLServer資料庫
- Sql Server 2005資料庫分割槽SQLServer資料庫
- sql server 2005資料庫載入SQLServer資料庫
- Sql server資料庫人員:常見錯誤(轉)SQLServer資料庫
- 資料庫資料恢復—附加資料庫錯誤823的SQL Server資料恢復案例資料庫資料恢復SQLServer
- SQL Server 2005中的tempdb資料庫的一些特點SQLServer資料庫
- 匯出Sql server 2005資料庫中某表的資料SQLServer資料庫
- 爛泥:SQL Server 2005資料庫安裝SQLServer資料庫
- SQL Server 2005資料庫中表的遞迴查詢SQLServer資料庫遞迴
- 深入講解SQL Server 2005資料庫中的SMOSQLServer資料庫
- SQL Server資料庫恢復,SQL Server資料恢復,SQL Server資料誤刪除恢復工具SQLRescueSQLServer資料庫資料恢復
- sql server資料庫錯誤資料恢復(資料庫連線失效,無法附加查詢)SQLServer資料庫資料恢復
- Sql Server 匯入另一個資料庫中的表資料SQLServer資料庫
- 如何建立和還原SQL Server 2005資料庫?SQLServer資料庫
- 在 SQL Server 2005 中配置資料庫郵件SQLServer資料庫
- 啟動資料庫的其中一個錯誤資料庫
- 【資料庫資料恢復】磁碟空間不足導致sql server錯誤的資料恢復資料庫資料恢復SQLServer
- SQL Server的“錯誤:9004”SQLServer
- SQL Server 2005資料庫日誌丟失的恢復SQLServer資料庫
- 查詢SQL Server 2005資料庫重做日誌的資訊SQLServer資料庫
- 資料庫誤運算元據恢復資料庫
- SQL Server 2005映象設定常見錯誤處理SQLServer
- SQL Server 2005無日誌檔案附加資料庫SQLServer資料庫
- SQL Server 2005 自動遠端資料庫備份SQLServer資料庫
- SQL Server 2005實現資料庫快取依賴SQLServer資料庫快取
- SQL Server 2005 在區域網中共享資料庫SQLServer資料庫
- 急 !!SQL SERVER錯誤SQLServer
- 資料庫新手常犯的 5 個錯誤資料庫
- SQL Server 容易忽略的錯誤SQLServer
- SQL Server 2005和SQL Server 2000資料的相互匯入SQLServer
- sql server 2005 資料修改的內部原理SQLServer
- SQL Server 2005對海量資料的處理SQLServer
- SQL Server 資料庫基本記錄(一)SQLServer資料庫
- SQL Server裡附加資料庫出錯的解決方法SQLServer資料庫