laravel/impala:如何进行参数化查询?

voase2hg  于 2021-06-26  发布在  Impala
关注(0)|答案(0)|浏览(393)

我有 laravel 7x 以及 impala/kudu (由提供) cloudera ). 我拿到钱了 ODBC 连接良好,如果您运行原始sql非参数化查询,它工作良好。
然而,我不能得到参数化的查询工作。
以下工作:

DB::connection('impala')->statement("insert into test1 values(4, 'zz')");

以下操作无效:

DB::connection('impala')->statement('insert INTO test1 values(?, ?) ', [4, 'zz']);
DB::connection('impala')->insert('insert INTO test1 values(?, ?) ', [4, 'zz']);

我得到的错误是:

SQLSTATE[HY000]: General error: 110 [Cloudera][ImpalaODBC] (110) Error while executing a query in Impala: [HY000] : ParseException: Syntax error in line 1: INSERT INTO test1 VALUES(?, ?) ^
Encountered: Unexpected character. Expected: CASE, CAST, DEFAULT, EXISTS, FALSE, IF, INTERVAL, LEFT, NOT, NULL, REPLACE, RIGHT, TRUNCATE, TRUE, IDENTIFIER 
CAUSED BY: Exception: Syntax error (SQLExecute[110] at ext\pdo_odbc\odbc_stmt.c:260) (SQL: INSERT INTO test1 VALUES(4, 'zz') )

正如您在这里看到的,有人已经有了相同的问题,但它是在c#但这不适用于我:查询参数与 Impala odbc驱动程序
另请注意,查询生成器不能与此连接/驱动程序一起使用。所以唯一的方法就是使用原始查询

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题