ORA-01460: conversão não implementada ou não razoável solicitada

Quando executo o seguinte código .Net:

using (var c = Shared.DataSources.BSS1.CreateCommand())
{
    c.CommandText = "\r\nSelect c1, c2, c3, rowid \r\nFrom someSpecificTable \r\nWhere c3 = :p0";
    var p = c.CreateParameter() as Oracle.DataAccess.Client.OracleParameter;
    c.Parameters.Add(p);
    p.OracleDbType = Oracle.DataAccess.Client.OracleDbType.Varchar2;
    p.DbType = System.Data.DbType.AnsiString;
    p.Size = 20;
    p.Value = "007";
    p.ParameterName = ":p0";
    using (var r = c.ExecuteReader())
    {
        r.Read();
    }
}

Estou tendo o erro a seguir:

ORA-01460: unimplemented or unreasonable conversion requested
ORA-02063: preceding line from XXX

Este não é meu banco de dados, e eu não tenho controle sobre as instruções select que recebo, essa tabela é de um link de banco de dados.

O engraçado é que se eu adicionar o seguinte código antes do ExecuteReader, ele funcionará bem.

c.CommandText = c.CommandText.Replace("\r\n", " ");

Infelizmente isso não é uma boa solução no meu caso, como eu não posso controlar para o SQL, mas eu posso mudar isso dessa maneira.

Quanto à própria tabela, as colunas são: c1 Número (5) c2 varchar2 (40) c3 varchar2 (20).

Eu sei que ORA-02063 que vem depois indica algo sobre um link de banco de dados, mas eu olhei na tabela synonim e não veio de qualquer database_link, e também não acho que \ r \ n deve afetar o link do banco de dados.

Eu tentei executar a consulta sem parâmetros ligados e funcionou - mas novamente uma prática ruim para fazê-lo em um termo geral.

O problema é que uma ferramenta concorrente que não é baseada em .net está funcionando e, portanto, não é um problema geral.

Também não consegui reproduzir o problema em meu próprio ambiente, este é um banco de dados e um site do cliente. Estou usando o cliente instantâneo 11.1.6.20 e também testei com o cliente instantâneo 11.2.3.0

O db é 10 e o link db é para um banco de dados oracle v8

Qualquer ajuda seria apreciada

questionAnswers(4)

yourAnswerToTheQuestion