Algumas perguntas, palpites e sugestões...
Qual é o tipo de SQL DDL exato para
TABLE_PART_NUM.FAMILY
? Você tentou usar
OdbcType.VarChar
, OdbcType.NVarChar
ou mesmo OdbcType.NText
em vez de OdbcType.Text
? Além disso, observe que, por padrão, o tamanho de NVARCHAR2 está em caracteres, mas VARCHAR2 está em bytes - talvez "4000" em seu código seja interpretado como 4000 caracteres , excedendo a largura máxima do campo para dados de caracteres de 4.000 bytes . Tente usar 2000 ou um número ainda menor apenas para fins de teste.
Tente executar a consulta do SQL Developer. Tem algum problema aí?
Você usa alguma codificação de caracteres "incomum" em seu banco de dados? Você pode executar...
SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER LIKE '%CHARACTERSET';
...e veja
NLS_CHARACTERSET
para codificação VARCHAR2 e NLS_NCHAR_CHARACTERSET
para codificação NVARCHAR2. Quais são as versões exatas do driver ODBC e do servidor Oracle? Eles combinam?
Você tem esse problema se tentar usar o código ODP.NET equivalente?