Някои въпроси, предположения и предложения...
Какъв е точният тип DDL SQL за TABLE_PART_NUM.FAMILY
?
Опитахте ли да използвате OdbcType.VarChar
, OdbcType.NVarChar
или дори OdbcType.NText
вместо OdbcType.Text
?
Също така, имайте предвид, че по подразбиране размерът на NVARCHAR2 е в знаци, но VARCHAR2 е в байтове - може би "4000" във вашия код се интерпретира като 4000 знака , надвишаващо максималната ширина на полето за символни данни от 4000 байта . Опитайте да използвате 2000 или дори по-малко число само за тестови цели.
Опитайте се да изпълните заявката от SQL разработчика. Имате ли проблеми там?
Използвате ли някакво "необичайно" кодиране на знаци във вашата база данни? Можете да изпълните...
SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER LIKE '%CHARACTERSET';
...и погледнете NLS_CHARACTERSET
за кодиране VARCHAR2 и NLS_NCHAR_CHARACTERSET
за NVARCHAR2 кодиране.
Какви са точните версии на вашия ODBC драйвер и Oracle сървър? Съвпадат ли?
Получавате ли този проблем, ако опитате да използвате еквивалентен ODP.NET код?