在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)
VS CODE離線安裝套件方式-續
去年 vscode離線安裝 powershell nupkg 今年在一台無外網的 windwos 2025上安裝時遇到了powershell版本一直讀取到了5.1的版本,鬼打牆了一下午,在VM還原重測測了好幾回,應該是可行了。 將下載到的免安裝powershell 解壓縮到...
-
一個老舊的aspx web form專案,調了一些功能建置成功,但進行部署時顯示以下錯誤。 在應用程式層級之外使用註冊為 allowDefinition='MachineToApplication' 的區段發生錯誤。錯誤的原因可能是虛擬目錄尚未在 IIS 中設定為...
-
freeFTPd是套免費的SFTP SERVER支援22 port SFTP及21port FTP,一般找到免費的都不支援SFTP只有技援FTPS。 之前一直有個困擾在幾台主機安裝後,有幾台重開機後,SFTP SERVER必須手動去啟動,一直以來老是搞不懂為什麼,今天看到一篇文...
-
Row.Cells[2].Text == "abc" ? "ok" : "not ok" ; 或加入Microsoft. VisualBasic 參考使用 vb namespace using Microsoft...