Доступ к хранимой процедуре BigQuery через драйвер simba jdb c - PullRequest
0 голосов
/ 29 февраля 2020

Все, я пытаюсь выполнить хранимую процедуру в google bigquery, используя соединение jdb c, но безуспешно.

Я последовал примеру здесь https://cloud.google.com/blog/products/data-analytics/command-and-control-now-easier-in-bigquery-with-scripting-and-stored-procedures.

Я могу создать и вызвать хранимую процедуру из веб-интерфейса bigquery, но когда я настроил источник данных в intellij с использованием драйвера simba, как описано здесь https://blog.jetbrains.com/datagrip/2018/07/10/using-bigquery-from-intellij-based-ide/

Затем, когда я запускаю вызов для выполнения хранимой процедуры

DECLARE target_employee_id INT64 DEFAULT 9;
DECLARE employee_hierarchy ARRAY<INT64>;
dataset.GetEmployeeHierarchy(target_employee_id, employee_hierarchy);
SELECT target_employee_id, employee_hierarchy;

я получаю ошибку

[HY000][100032] [Simba][BigQueryJDBCDriver](100032) Error executing query job. Message: Unrecognized name: target_employee_id at [1:8] com.simba.googlebigquery.support.exceptions.GeneralException: [Simba][BigQueryJDBCDriver](100032) Error executing query job. Message: Unrecognized name: target_employee_id at [1:8]

Поскольку поддержка хранимых процедур находится в предварительной бета-версии, мне интересно, поддерживает ли драйвер Simba это сейчас? Если нет, то есть ли другие драйверы jdb c, которые в настоящее время делают?

1 Ответ

0 голосов
/ 05 марта 2020

Получается, что все 4 оператора должны быть выполнены как один Blo c, а не как отдельные операторы. В intellij вы можете выделить все эти операторы и нажать run, чтобы выполнить их и вернуть результаты. В Java просто передайте их как одну строку в Statement.execute.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...