Использование SQLDeveloper 2.1.1.64, если вы попытаетесь набрать следующий код:
DECLARE
v_status_code NUMBER;
v_status_text VARCHAR2(30);
v_to_delete NUMBER := 5;
BEGIN
PACKAGE_NAME.Delete(v_to_delete, v_status_code, v_status_text);
END;
Нажатие Enter после строки PACKAGE_NAME.Delete (...) заставит Delete войти во все заглавные буквы (DELETE). Я отключил изменение регистра в параметрах средства форматирования SQL, но это все еще происходит. У меня возникают другие проблемы, схожие с этой, когда он случайным образом переформатирует строки кода, но я не мог придумать такой пример, как этот. Конкретное имя пакета не имеет значения, и оно делает это, даже если PACKAGE_NAME находится в UpperCamelCase.
Я не знаю, является ли это ошибкой в SQLDeveloper или я где-то пропускаю некоторые настройки. Кажется, что настройки SQL Formatter в меню «Инструменты»> «Установки»> «База данных»> «SQL Formatter»> «Oracle Formatting» этого не делают, поэтому я не знаю, что делать. Меня раздражает необходимость отлавливать некоторые из этих изменений формата, которые я иногда замечаю только при выполнении diff.