2011-07-06 41 views
1

我在Oracle中有一個數據庫。客戶端應用程序是用Delphi編寫的。當我將數據輸入連接到數據庫中的表的DBGrid時,我得到「ORA-12899錯誤值對於列太大」。錯誤消息中指定的列的數據類型是varchar(6)。並且I輸入6位數。錯誤還表明,最大值是6,實際值是7,這是錯誤的。我嘗試將數據類型更改爲數字,但我得到的錯誤相同,只是最大值爲3,實際值爲4.Is德爾福和甲骨文有一個錯誤?我使用ADO進行連接。BeforePost事件中沒有東西。Delphi得到Oracle錯誤ORA-12899列錯誤值太大

+0

您確定在值的末尾沒有空格或換行符嗎?或者可能是「寬」字符(如Unicode符號),對於單個字符而言,其大小爲兩個字節。 – Martijn

+0

我正在使用Oracle的提供程序。 –

+0

這只是數字。沒有寬字符。 –

回答

1

不知道關於Delphi的任何事情,是否可以將您的網格數據單元解釋爲一個數字並且爲該符號保留空間?

編輯:

如果你輸入6個字符,但包括1個或多個阿爾法,會發生什麼?

+1

varchar字段被映射到Delphi數據集中的字符串字段,並且網格使用基礎字段類型,除非開發人員更改了某些內容。 – 2011-07-06 21:02:12