Sql-Server-2008-R2

使用 DTS 包的 sql 作業可以訪問錯誤列中的數據嗎?(原來是不好的加入條件)

  • December 17, 2015

我們看到一個 Sql 作業/DTS 包失敗,因為它被饋送到一個 int 轉換常式中的非數字字元數據。

數據看起來很有可能來自我們表中的另一列,其中非數字格式是合適的。

這已經發生了不止一次。

有沒有人聽說過 Sql 作業/DTS 包“迷失方向”並從錯誤的列訪問數據?

我認為這是一種罕見的可能性,但我們正在為 DTS 包使用 SSMS 2008 R2 系統(即使在該系統中也被認為是過時的),我想一切皆有可能……

看起來(至少在這種情況下)該列在連接子句中被正常訪問。

這有點類似於做:

a. 高度 = b. 重量

此外,假設重量是雙倍,而高度以整數英寸為單位給出,並且以某種方式預計重量是整數……

雖然這不是確切的情況(它確實試圖將 char 轉換為 int)但它有點近似它……

顯然,周圍的邏輯使該子句大部分時間都無法實際執行,因此隱藏了原本非常明顯的錯誤。

一位同事發現了它。

不過,這可能對其他人有幫助……

引用自:https://serverfault.com/questions/743202