powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Компарер + parsing error
5 сообщений из 5, страница 1 из 1
Компарер + parsing error
    #39351388
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая процедура
Код: sql
1.
2.
3.
4.
5.
6.
7.
create or alter procedure test_proc (
    p varchar(100))
AS
begin
  exit;
  execute procedure test_proc (:p) || 'text';
end


Если БД состоит только из нее и сравнивать БД саму с собой то в логе сравнения будет ошибка
автор==== Error ==== : Procedure TEST_PROC: Missing: <;> (<||>)
Script: Line:3 Pos:39

Если компилировать эту процедуру, то получаю "parsing error"

Подобная конструкция получилась случайно, не знал что процедуры можно вызывать без скобок
...
Рейтинг: 0 / 0
Компарер + parsing error
    #39351471
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк ЕвгенийПодобная конструкция получилась случайно, не знал что процедуры можно вызывать без скобок

можно, но лучше так не делать
...
Рейтинг: 0 / 0
Компарер + parsing error
    #39351568
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тоже впервые узнал, что execute procedure может быть операндом...
...
Рейтинг: 0 / 0
Компарер + parsing error
    #39351617
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

там немного по другому. Все что после имени процедуры воспринимается как аргументы до RETURNING_VALUES или ;. Скобки игнорируются вовсе, но для читаемости их можно записать.

З.Ы. Я бы на месте разработчиков FB запретил конструкцию без скобок вообще, но это нарушит обратную совместимость. Зато в будущем позволит избежать глупых ошибок.
...
Рейтинг: 0 / 0
Компарер + parsing error
    #39351745
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисЗ.Ы. Я бы на месте разработчиков FB запретил конструкцию без скобок вообще, но это нарушит обратную совместимость. Зато в будущем позволит избежать глупых ошибок.
Согласен. Это и была ошибка подобного рода. Был один параметр в процедуре, к параметру присоединил другую строку, и напутал со скобками.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Компарер + parsing error
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]