在SQL SERVER 2000上,讀取一段OPENQUERY SQL,資料來源為informix 11.50,ODBC為IBM INFORMIX 3.82 32BIT。
select * from openquery(testdb,'select * from testtable')出現以下錯誤。
OLE DB Provider 'MSDASQL' 提供資料行 'colxxx' 無效的中繼資料 (Metadata)。The scale exceeded the precision.
來源資料表中,有一欄位colxxx的型態 為decimal(14,0),透過OPENQUERY讀取時,有上述錯誤。
解決方法有二個
1.在SQL SERVER 2000所在主機ODBC,於Advanced頁籤中勾選Describe Decimal Floating Point as SQL_REAL/SQL_DOUBLE。
2.將SQL改寫如下,select
* from openquery(ifx220 'select colxxx::integer as colxxx from testtable'),先轉型為SQL
SERVER可接受的欄位型態。
訂閱:
文章 (Atom)
離線安裝SSMS 22 launched extracted application exiting with result code 0x138b
SSMS 22 安裝器下載頁面 https://learn.microsoft.com/zh-tw/ssms/install/install https://aka.ms/ssms/22/release/vs_SSMS.exe 將安裝檔下載到本機,檔案好大2.5G https:...
-
上網找了免費的白箱檢測工具,找到了 puma scan 因為支援OWASP TOP 10的檢測,所以這是一個符合客戶需求又能與Visual studio結合的工具(白話說...交差了事矣....) 更重要的是這不用錢....檢測工具都貴森森的,尤其是源碼檢測工具。 ht...
-
freeFTPd是套免費的SFTP SERVER支援22 port SFTP及21port FTP,一般找到免費的都不支援SFTP只有技援FTPS。 之前一直有個困擾在幾台主機安裝後,有幾台重開機後,SFTP SERVER必須手動去啟動,一直以來老是搞不懂為什麼,今天看到一篇文...
-
在SQL SERVER 2008R2 10.50.2500 上建立一個LIKED SERVER連結INFORMIX,OPENQUERY時遇到了一個錯誤 testab中只有一個欄位coltest varchar(40),輸入一個UNICODE的字,查詢後出現錯誤 s...