修正︰ 錯誤訊息,當您使用 DB2 的 Microsoft ODBC 驅動程式來存取 IBM DB2 資料表而且 IBM DB2 的資料表名稱多於 18 個字元:"不正確的字串或緩衝區長度"


狀況


當您使用 DB2 的 Microsoft ODBC 驅動程式來存取 IBM DB2 資料表上 IBM DB2 萬用資料庫 (UDB) z/OS 系統時,您會收到下列錯誤訊息︰
[S1090][Microsoft][ODBC DB2 驅動程式]無效的字串或緩衝區長度。
IBM DB2 的資料表名稱多於 18 個字元時,就會發生這個問題。

注意事項
  • 這個錯誤訊息的正確格式可能因使用 db2 的 ODBC 驅動程式的應用程式而有所不同。
  • Z/OS 的 IBM DB2 UDB 先前是已知為 IBM DB2/MVS 中。
  • Microsoft 主機整合 Server 2006 也會發生這個問題。

原因


DB2 的 ODBC 驅動程式被設計來支援最大的資料表名稱長度為 18 個字元,當連線到系統 z/OS IBM DB2 UDB 的 DB2 的 ODBC 驅動程式。此長度會對應到最大的資料表名稱的長度所支援的 IBM DB2 UDB 早 z/OS 第 8 版的 IBM DB2 UDB z/OS 版本。

解決方案


主機整合伺服器 2006

若要解決這個問題,請取得最新的 service pack,主應用程式整合 Server 2006 的。如需詳細資訊,按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
如何取得最新的主應用程式整合 Server 2006 service pack 的979497

主機整合伺服器 2004

支援的 hotfix 可從 Microsoft 取得。不過,此 Hotfix 僅用於修正本文中所述的問題。此 Hotfix 只適用於發生此特定問題的系統上。此 hotfix 可能會接受其他測試。因此,如果此問題的影響不會很嚴重,我們建議您等候含此 hotfix 的下一版軟體更新。

如果 hotfix 可供下載,在此知識庫文件頂端將出現「可用的 Hotfix」區段。如果這個區段沒有出現,請連絡 Microsoft 客戶服務及支援以取得 hotfix。

注意如果發生其他問題,或如果需要進行疑難排解,您可能必須建立個別的服務要求。收取支援費用會套用到其他支援問題和此特定 hotfix 無法解決的問題。如 Microsoft 客戶服務及支援的電話號碼或建立個別的服務要求的完整清單,請造訪下列 Microsoft 網站︰注意「 下載 Hotfix 」 表單會顯示 hotfix 可用的語言。如果看不到您的語言,是因為未提供該語言的 Hotfix 。

檔案資訊

此 hotfix 的英文版具有下列表格中所列檔案屬性 (或較新的檔案屬性)。這些檔案的日期和時間會以國際標準時間 (UTC) 格式列出。當您檢視檔案資訊時,會將它轉換為本地時間。若要查看 UTC 與當地時間的時差,請在 [控制台] 中的日期和時間項目使用 [時區] 索引標籤。
檔案名稱檔案版本檔案大小日期時間平台預存程序需求
Db2oledb.dll6.0.2048.0488,96003-Nov-200617:31x86SP1
Db2oledb.h不適用24,57903-Nov-200617:36不適用SP1
Ddmstr.dll6.0.2048.044,03203-Nov-200617:31x86SP1
Drdaresync.exe6.0.2048.0337,40803-Nov-200617:32x86SP1
Microsoft.hostintegration.dataaccesslibrary.dll6.0.2048.086,01603-Nov-200617:31x86SP1
Microsoft.hostintegration.dataaccesstool.exe6.0.2048.02,703,36003-Nov-200617:32x86SP1
Microsoft.hostintegration.msdb2client.dll6.0.2048.0114,68803-Nov-200617:31x86SP1
Mseidb2c.dll6.0.2048.071,68003-Nov-200617:31x86SP1
Mseidb2d.dll6.0.2048.0435,20003-Nov-200617:31x86SP1
Mseidrda.dll6.0.2048.0695,80803-Nov-200617:32x86SP1
注意由於檔案相依性,包含上述檔案的最新版 hotfix 也可能包含其他檔案。

狀態


Microsoft 已確認這是<套用>一節所列出的 Microsoft 產品的問題。

更多的資訊


您套用此 hotfix 之後,針對 DB2 的 ODBC 驅動程式可以存取 IBM DB2 資料表具有最多可有 128 個字元的資料表名稱。這個長度是由 IBM DB2 UDB z/OS 第 8 版支援的最大的不合格的資料表名稱長度。

如需有關當您使用 DB2 的 ODBC 驅動程式來存取 IBM DB2 資料表有 30 個字元的資料行名稱時,就會發生問題的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件︰

修正924453 ︰ 存取 IBM DB2 資料表有 30 個字元的資料行名稱的情況下,您在使用 DB2 的 Microsoft ODBC 驅動程式時出現錯誤訊息: 「 一般錯誤 」

如需有關軟體更新術語的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

用來描述 Microsoft 軟體更新標準術語的編號 824684描述

本文將所述之產品製造協力廠商均與 Microsoft 無關。Microsoft 不對這些產品之其他相關效能或可靠性作出任何擔保或默示。