sqldeveloper сломанный автоформат
Я пытаюсь отформатировать следующий код PLSQL с помощью разработчика SQL.
log( 'file generated into '
|| 'D:\'
|| 'some path' );
Похоже, что разработчику SQL не нравится этот символ. С этого момента форматирование не работает.
Все работает, если я напишу:
log( 'file generated into '
|| 'D:'
|| '\'
|| 'some path' );
Может кто-нибудь объяснить, в чем разница между этими двумя кодами, и есть ли обходной путь, кроме переписывания кода?
Благодарю.
ОБНОВИТЬ
Оригинальный код следующий:
log( 'file generated into '
|| 'D:\'
|| 'some path' );
INSERT INTO EXPORT_TABLE (A,
B, --comment containing '
C)
VALUES (1,
2,
3);
И после форматирования с помощью SQL Developer это становится: (обратите внимание на "C) VALUES", который теперь находится внутри комментария)
log( 'file generated into ' || 'D:\'
|| 'SOME path' );
INSERT INTO EXPORT_TABLE (A,
B, --comment containing ' C) VALUES
(
1, 2, 3
)
;
1 ответ
Oracle использует "\" в качестве символа ESCAPE. Добавьте дополнительный "\" к вашему утверждению, например D:(за которым следуют два символа "\").YOU получит результат следующим образом
log( 'file generated into ' || 'D:\\' || 'SOME path' );
Надеюсь, что вы сделали..