-
Notifications
You must be signed in to change notification settings - Fork 145
Closed
Labels
Description
Вот такой код:
$db = new ClickHouseDB\Client([
"host" => "127.0.0.1",
"port" => 8123,
"username" => "default",
"password" => ""
]);
$db->select("SELECT :a, :b", [
"a" => ":b",
"b" => ":a"
])->rows();
выдаёт ошибку:
PHP Fatal error: Uncaught ClickHouseDB\DatabaseException: Syntax error: failed at position 10: :a'', ':a' FORMAT JSON. Expected one of: identifier, alias, AS, token, AND, OR, BETWEEN, IS, LIKE, NOT LIKE, IN, NOT IN, GLOBAL IN, GLOBAL NOT IN, Comma, QuestionMark, ORDER BY, SETTINGS, INTO OUTFILE, FORMAT, FROM, PREWHERE, WHERE, GROUP BY, WITH, HAVING, LIMIT, UNION ALL
IN:SELECT '':a'', ':a' FORMAT JSON in /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php:162
Stack trace:
#0 /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php(196): ClickHouseDB\Statement->error()
#1 /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php(210): ClickHouseDB\Statement->check()
#2 /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php(459): ClickHouseDB\Statement->init()
#3 /home/user/test/phpcl_bug/test.php(15): ClickHouseDB\Statement->rows()
#4 {main}
thrown in /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php on line 162
Другой пример:
$db->select("SELECT :a, :a2", [
"a" => "x",
"a2" => "x"
])->rows();
PHP Fatal error: Uncaught ClickHouseDB\DatabaseException: Syntax error: failed at position 16: 2 FORMAT JSON. Expected one of: identifier, alias, AS, token, AND, OR, BETWEEN, IS, LIKE, NOT LIKE, IN, NOT IN, GLOBAL IN, GLOBAL NOT IN, Comma, QuestionMark, ORDER BY, SETTINGS, INTO OUTFILE, FORMAT, FROM, PREWHERE, WHERE, GROUP BY, WITH, HAVING, LIMIT, UNION ALL
IN:SELECT 'x', 'x'2 FORMAT JSON in /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php:162
Stack trace:
#0 /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php(196): ClickHouseDB\Statement->error()
#1 /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php(210): ClickHouseDB\Statement->check()
#2 /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php(459): ClickHouseDB\Statement->init()
#3 /home/user/test/phpcl_bug/test.php(22): ClickHouseDB\Statement->rows()
#4 {main}
thrown in /home/user/test/phpcl_bug/phpClickHouse/src/Statement.php on line 162