使用IBM Informix Dynamic Server的版本10.00.FC9Informix SQL錯誤 - 爲什麼UPDATE語句不工作?
我得到的錯誤是:
1226: Decimal or money value exceeds maximum precision.
通常情況下,這是非常合情合理的,我可以通過CAST
修正精度,但我的一切嘗試仍然產生相同的錯誤。
我有三列,我最初設置爲一個常數0.00
。在幾條語句之後,我將這兩列更新爲正數小數,保持相同的精度。
當我嘗試將這兩列相乘以更新第三列時,出現上述錯誤。
我的更新語句是:UPDATE table SET col_3 = col_1*col_2;
我已經試過幾件事情,但曾在避免錯誤沒有運氣。
我試着將col_3
中的常數設置爲0.000000
。
我也試過兩個相乘的雙方和最終值使用CAST
更新:
UPDATE table SET col_3 = CAST((col_1) AS DECIMAL(6,2))*CAST((col_2) AS DECIMAL(6,2));
UPDATE table SET col_3 = CAST((col_1*col_2) AS DECIMAL(6,2));
這些嘗試的任意組合總是導致同樣的錯誤。
有誰知道我在這裏失蹤或做錯了什麼?
你知道IDS 10.00不再受IBM支持的缺少這兩個地方,我相信。 – 2011-12-22 16:17:46