TranslateQueryResponse.getErrorsCount() для Java Google Cloud API (BigQuery Migration) у меня не работает ⇐ JAVA
-
Anonymous
TranslateQueryResponse.getErrorsCount() для Java Google Cloud API (BigQuery Migration) у меня не работает
Я работаю с пакетом Java: Google Cloud Bigquery Migration v2alpha, чтобы преобразовать запрос SQL Teradata в BigQuery.
В этом небольшом примере я хочу обнаружить ошибку во время перевода (как видите, «SELE» не кажется очень хорошим SQL-запросом):
public static void simpleTranslation(String project, String location) выдает IOException { попробуйте (SqlTranslationServiceClient sqlTranslationServiceClient = SqlTranslationServiceClient.create()) { Родитель LocationName = LocationName.of(проект, местоположение); TranslateQueryRequest.SqlTranslationSourceDialect sourceDialect = TranslateQueryRequest.SqlTranslationSourceDialect.forNumber(1); Строковый запрос = "SELE"; Ответ TranslateQueryResponse = sqlTranslationServiceClient.translateQuery(родительский, sourceDialect, запрос); System.out.println("Переведенный запрос:\n----------\n" + response.getTranslatedQuery() + "----------"); System.out.println("Количество ошибок: " + response.getErrorsCount()); } catch (IOException e) { System.out.println("Ошибка во время трансляции: " + e.toString()); } } Я использую функцию getErrorsCount() из класса TranslateQueryResponse (doc).
Мне хотелось бы получить счетчик ошибок, равный 1, однако, когда я запускаю его, я получаю:
Переведенный запрос: ---------- -- ERROR_OTHER: Сбой синтаксического анализа: После получен bare_identifier(SELE), но ожидается [, tok_semi, tok_lpar, ALTER, BEGIN, BT, CALL, CD, CHECK, CHECKPOINT, CM, COLLECT, COMMENT, COMMIT, CREATE, CT , CV, БАЗА ДАННЫХ, DEL, УДАЛЕНИЕ, ДИАГНОСТИКА, DROP, DUMP, ECHO, ET, EXEC, EXECUTE, EXPLAIN, FLUSH, GIVE, GRANT, HELP, INS, INSERT, LOCK, LOCKING, Logging, MERGE, MLOAD, MODIFY, RELEASE , RENAME, REPLACE, RESTART, RESTORE, REVOKE, ROLLBACK, SEL, SELECT, SET, SHOW, UPD, UPDATE, USING, With, kw_end(lookahead=TRANSACTION), kw_end(lookahead=FASTEXPORT), kw_end(lookahead=MLOAD), kw_end(lookahead=ЗАГРУЗКА), kw_end(lookahead=QUERY), tok_lpar(lookahead=)]. ---------- Количество ошибок: 0 Мне очень интересно, почему количество ошибок равно 0.
(Кстати, при другом действительном запросе перевод работает.)
Я работаю с пакетом Java: Google Cloud Bigquery Migration v2alpha, чтобы преобразовать запрос SQL Teradata в BigQuery.
В этом небольшом примере я хочу обнаружить ошибку во время перевода (как видите, «SELE» не кажется очень хорошим SQL-запросом):
public static void simpleTranslation(String project, String location) выдает IOException { попробуйте (SqlTranslationServiceClient sqlTranslationServiceClient = SqlTranslationServiceClient.create()) { Родитель LocationName = LocationName.of(проект, местоположение); TranslateQueryRequest.SqlTranslationSourceDialect sourceDialect = TranslateQueryRequest.SqlTranslationSourceDialect.forNumber(1); Строковый запрос = "SELE"; Ответ TranslateQueryResponse = sqlTranslationServiceClient.translateQuery(родительский, sourceDialect, запрос); System.out.println("Переведенный запрос:\n----------\n" + response.getTranslatedQuery() + "----------"); System.out.println("Количество ошибок: " + response.getErrorsCount()); } catch (IOException e) { System.out.println("Ошибка во время трансляции: " + e.toString()); } } Я использую функцию getErrorsCount() из класса TranslateQueryResponse (doc).
Мне хотелось бы получить счетчик ошибок, равный 1, однако, когда я запускаю его, я получаю:
Переведенный запрос: ---------- -- ERROR_OTHER: Сбой синтаксического анализа: После получен bare_identifier(SELE), но ожидается [, tok_semi, tok_lpar, ALTER, BEGIN, BT, CALL, CD, CHECK, CHECKPOINT, CM, COLLECT, COMMENT, COMMIT, CREATE, CT , CV, БАЗА ДАННЫХ, DEL, УДАЛЕНИЕ, ДИАГНОСТИКА, DROP, DUMP, ECHO, ET, EXEC, EXECUTE, EXPLAIN, FLUSH, GIVE, GRANT, HELP, INS, INSERT, LOCK, LOCKING, Logging, MERGE, MLOAD, MODIFY, RELEASE , RENAME, REPLACE, RESTART, RESTORE, REVOKE, ROLLBACK, SEL, SELECT, SET, SHOW, UPD, UPDATE, USING, With, kw_end(lookahead=TRANSACTION), kw_end(lookahead=FASTEXPORT), kw_end(lookahead=MLOAD), kw_end(lookahead=ЗАГРУЗКА), kw_end(lookahead=QUERY), tok_lpar(lookahead=)]. ---------- Количество ошибок: 0 Мне очень интересно, почему количество ошибок равно 0.
(Кстати, при другом действительном запросе перевод работает.)
Мобильная версия