Я хотел уточнить некоторое использование между ;
и /
. В SQLPLUS:
;
означает «прекратить текущую инструкцию, выполнить его и сохранить в буфер SQLPLUS "<newline>
после DML (SELECT, UPDATE, INSERT, ...) или некоторые типы операторов DDL (создание таблиц и представлений) (которые не содержат ;
), это означает, что хранить инструкцию в буфере, но не запускать ее. /
после ввода инструкции в буфер (с пробелом <newline>
) означает «запустить DML или DDL или PL / SQL в буфере. RUN
или R
представляет собой команду sqlsplus для отображения / вывода SQL в буфере и ее запуска. Она не прекращает SQL-заявление. /
во время ввода DML или DDL или PL / SQL означает «завершите текущую инструкцию, запустите ее и сохраните ее в буфере SQLPLUS» ПРИМЕЧАНИЕ. Поскольку ;
используются для завершения PL / SQL для завершения инструкции ;
, нельзя использовать SQLPLUS означает «завершить работу текущего оператора, выполнить его и сохранить в буфер SQLPLUS», потому что мы хотим, чтобы весь блок PL / SQL был полностью в буфере, а затем выполнил его. Блоки PL / SQL должны заканчиваться:
END;
/
Как указывал @DazWilkin, многие клиентские библиотеки GCP (например, GCS в вашем случае) знают, как автоматически определять доступные «учетные данные приложения по умолчанию».
Эти учетные данные ADC в настоящее время работают только в API Google Cloud Platform (Google Drive предшествует этому). Вы можете прочитать краткий обзор Google Drive Java, чтобы узнать, как получить учетные данные: https://developers.google.com/drive/api/v3/quickstart/java
Для ссылки, клиент GCP библиотеки будут искать АЦП по:
GOOGLE_APPLICATION_CREDENTIALS
переменной среды, если она установлена, указывающей на файл ключей JSON учетной записи службы. %APPDATA%/gcloud/application_default_credentials.json
(Windows) или $HOME/.config/gcloud/application_default_credentials.json
(другое), если пользователь выполнил команду gcloud auth application-default login
. appengine.AccessToken
. В вашем случае ваши модули GKE используют метод # 4 для получения токена для операций с корзиной GCS; но не для Drive API.