Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / execute block Parameter name expected / 19 сообщений из 19, страница 1 из 1
20.06.2011, 14:20
    #37315872
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
FB 2.0.6, IBExpert 2011.03.29

Вроде делаю всё правильно.
Вот пример здесь есть: http://www.firebirdsql.org/refdocs/langrefupd20-execblock.html

Вот мой код (выполняю в IBExpert)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
execute block (pass1 varchar( 255 ) = ?)
as
begin
  if (exists (select id from toptions2 where name = 'dbpass')) then
    update TOPTIONS2 set val = pass1 where name = 'dbpass';
  else
    insert into TOPTIONS2 (name,  val) values ('dbpass', pass1);
end

IBExpert выдает:
авторSQL Parse Error:
Parameter name expected

Что неправильно в моем запросе?
...
Рейтинг: 0 / 0
20.06.2011, 14:23
    #37315887
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Из приложения или isql попробуй.
Это тараканы IBE, судя по всему.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
20.06.2011, 14:43
    #37315933
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
ну и до кучи - параметры прилично предварять двоеточием.
set val = :pass1 ...
...
Рейтинг: 0 / 0
20.06.2011, 15:37
    #37316084
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Ага. спасибо :)


А кто-нибудь пробовал Execute Block выполнить в fibQuery с передачей параметров?
...
Рейтинг: 0 / 0
20.06.2011, 15:40
    #37316090
IgorVl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Попробуйте так:
Код: plaintext
1.
2.
execute block (pass1 varchar( 255 ) = :pass1)
...
...
Рейтинг: 0 / 0
20.06.2011, 15:42
    #37316095
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
А теперь правильный ответ:

Код: plaintext
1.
2.
execute block (pass1 varchar( 255 ) = ?pass1)
...

или

Код: plaintext
1.
2.
execute block (pass1 varchar( 255 ) = :pass1)
...
...
Рейтинг: 0 / 0
20.06.2011, 16:05
    #37316165
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
да, точно :)
странно....

но тогда на офсайте нужно поправить, наверное?
...
Рейтинг: 0 / 0
20.06.2011, 16:07
    #37316169
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
X11да, точно :)
странно....

но тогда на офсайте нужно поправить, наверное?

На офсайте тоже правильно, там синтаксис для isql и иже с ним.
...
Рейтинг: 0 / 0
20.06.2011, 16:11
    #37316182
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Опять странно.... зачем вносить путаницу и создавать разный синтаксис?
И что значит "иже с ним. "?
Должен быть какой-то список программ/утилит, которым нужно применять тот синтаксис, что указан на офсайте?
...
Рейтинг: 0 / 0
20.06.2011, 16:17
    #37316202
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
X11Опять странно.... зачем вносить путаницу и создавать разный синтаксис?
И что значит "иже с ним. "?
Должен быть какой-то список программ/утилит, которым нужно применять тот синтаксис, что указан на офсайте?

"Иже с ним" означает все, что работает с неименованными параметрами.
Фибы и эксперт ожидают именованные параметры. В обычных запросах они давно никакого удивления не вызывают.
...
Рейтинг: 0 / 0
20.06.2011, 16:30
    #37316225
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
X11о тогда на офсайте нужно поправить, наверное?
На офсайте кого? Фибов? Так там и так всё правильно написано. IBExpert? Нууу... может
быть. Firebird? Так у неё именованных параметров нет и, возможно, и не будет.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
20.06.2011, 16:32
    #37316233
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
X11Должен быть какой-то список программ/утилит, которым нужно применять тот синтаксис, что указан на офсайте?
ну, мораль такая. именованные параметры на клиенте это фикция, и существуют только благодаря возможностям компонент.
Штатно с клиента запрос с именованными параметрами все равно превращается в запрос с ?.
Я про запрос с параметрами, не про execute block.
...
Рейтинг: 0 / 0
20.06.2011, 16:49
    #37316271
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Dimitry SibiryakovX11о тогда на офсайте нужно поправить, наверное?
На офсайте кого? Фибов?

А где я говорил про офсайт фибов? Первое сообщение почитайте.
...
Рейтинг: 0 / 0
20.06.2011, 20:18
    #37316691
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Dimitry Sibiryakov> Firebird? Так у неё именованных параметров нет и, возможно, и не будет.

Ну, если цепляться к словам, то начиная с 2.5 это уже не совсем так. :)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
21.06.2011, 12:50
    #37317676
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Hello, Гаджимурадов Рустам!
You wrote on 20 июня 2011 г. 17:18:18:

Гаджимурадов Рустам> Ну, если цепляться к словам, то начиная с
2.5 это уже не совсем так. :)
а ты не путай EXECUTE STATEMENT с "божьим даром".

--
With best regards, Мимопроходящий.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
21.06.2011, 17:44
    #37318509
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Я не путаю, а цепляюсь к словам, о чем сразу и предупредил. :)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
21.06.2011, 17:47
    #37318519
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
Hello, Гаджимурадов Рустам!
You wrote on 21 июня 2011 г. 14:44:15:

Гаджимурадов РустамЯ не путаю, а цепляюсь к словам, о чем сразу
и предупредил.DS вещает об API.
и совершенно корректно.
а об чем ты - не знаю.

--
With best regards, Мимопроходящий.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
21.06.2011, 17:56
    #37318550
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
API он не упоминал. А кроме API есть еще DSQL и PSQL.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
16.09.2020, 10:12
    #39999214
descent52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
execute block Parameter name expected
IgorVl
Попробуйте так:
Код: sql
1.
2.
execute block (pass1 varchar(255) = :pass1)
...



IBExpert
А теперь правильный ответ:

Код: sql
1.
2.
execute block (pass1 varchar(255) = ?pass1)
...



или

Код: sql
1.
2.
execute block (pass1 varchar(255) = :pass1)
...



лучше поздно, чем никогда, СПАСИБО IgorVl и IBExpert ))))
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / execute block Parameter name expected / 19 сообщений из 19, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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