Однострочный комментарий нулевой длины приводит к ошибке синтаксического анализа

не имеет первостепенного значения, но мне было бы интересно, если бы кто-нибудь мог объяснить это поведение, которое я получаю для однострочных комментариев нулевой длины как в 11g, так и в 12c, Oracle SQL Developer 17.3.1.279. Особенно мне интересны разные результаты Теста 3 (--a) и Теста 5 (---):

-- Test 1
select * from dual;
-- works

-- Test 2
select * from -- comment
dual;
/* works, 'Query Result SQL' shows (note this is 2 lines)
    select * from -- comment
    dual
*/

-- Test 3
select * from --a
dual;
/* works, 'Query Result SQL' shows (note this is 2 lines)
    select * from --a
    dual
*/

-- Test 4
select * from --
dual;
/* does not work, ORA-00903: invalid table name, 'Query Result SQL' shows (note this is 1 line)
    select * from - dual
*/

-- Test 5
select * from ---
dual;
/* does not work, ORA-00903: invalid table name, 'Query Result SQL' shows (note this is 1 line)
    select * from -- dual
*/

Согласно документации 10g, которую я смог найти, и --, и --- должны быть действительными https://docs.oracle.com/cd/B13789_01/server.101/b10759/sql_elements006.htm:

Begin the comment with -- (two hyphens). Proceed with the text of the comment. This text cannot extend to a new line. End the comment with a line break.

это, вероятно, проблема IDE и не имеет ничего общего с оракулом. в PLSQL Developer все запросы работают нормально

hotfix 08.04.2019 10:56

Действительно странно. Вероятно, это связано с тем, что пустой комментарий не закрывается должным образом, потому что он прерывает SQL-запрос. Если вы добавите к нему любой текст, он сработает, и даже если вы сделаете /**/, он сработает.

TineO 08.04.2019 11:00

Протестировано в мастерской Oracle APEX SQL, и там тоже работает. Просто ошибка с SQL Developer, казалось бы

TineO 08.04.2019 11:07

Хорошо, спасибо, ребята. Я не смог найти страницу, чтобы сообщить об ошибках команде разработчиков oracle sql, поэтому я думаю, что это конец этой темы. ТИВМ

Peter 08.04.2019 12:55
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
3
4
70
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

см. комментарии. это ошибка в разработчике oracle sql.

Другие вопросы по теме