0

Npgsql对 denodo 视图执行更新语句失败,因为语法错误

"ERROR:  : Syntax error: Exception parsing query near '''". When debug, I saw below translated sql statement which was pass to denodo from Npgsql parser.
"update testdenodoupdate set TestValue = ((E'aa')::text) where id = ((1)::int4);"

由于denodo不承认该声明,因此失败。

请帮助建议是否有其他替代解决方案?我提供的测试代码如下:

NpgsqlConnection conn = new NpgsqlConnection("Server=xx.xx.xx.xx;Port=9996;Database=xxx;User Id=xx;Password=xx;CommandTimeout=40;");

    conn.Open();
    NpgsqlCommand command = new NpgsqlCommand("update testdenodoupdate set TestValue = :TestValue where id = :id;", conn);
    command.Parameters.Add(new NpgsqlParameter("TestValue",             NpgsqlTypes.NpgsqlDbType.Text));
    command.Parameters[0].Value = "aa";
    command.Parameters[0].SourceColumn = "TestValue";

    command.Parameters.Add(new NpgsqlParameter("id", NpgsqlTypes.NpgsqlDbType.Integer));
    command.Parameters[1].Value = 1;
    command.Parameters[1].SourceColumn = "id";

    ssUpdatedRows = command.ExecuteNonQuery();   
4

2 回答 2

0

可以试试最近发布的新版 3.0.0-beta0001 吗?参数处理发生了显着变化,问题可能不再存在。

于 2015-05-26T04:55:05.057 回答
0

在以前的 Denodo 版本中,只需通过 Npgsql 数据提供程序进行选择操作。最新更新包括对整个 CRUD 操作的支持。

于 2015-07-03T13:24:54.210 回答