Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Выполнение MERGE через EXECUTE STATEMENT / 5 сообщений из 5, страница 1 из 1
02.09.2020, 16:29
    #39994891
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выполнение MERGE через EXECUTE STATEMENT
Есть таблица
Код: sql
1.
2.
3.
4.
5.
6.
CREATE TABLE TEST (
    ID         INTEGER NOT NULL,
    NAME       VARCHAR(32) NOT NULL
);

ALTER TABLE TEST ADD CONSTRAINT PK_TEST PRIMARY KEY (ID);

Выполняю блок
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
EXECUTE IBEBLOCK
AS
BEGIN
  sql = '
    MERGE INTO
      test t
    USING (
      SELECT
        CAST(:id AS TYPE OF COLUMN test.id) AS "ID"
      FROM
        rdb$database
    ) sel
    ON (
      t."ID" = sel."ID"
    )
    WHEN NOT MATCHED THEN
      INSERT (
        a."ID",
        a."NAME"
      ) VALUES (
        sel."ID",
        :name
      );
  ';
  vals = 1;
  vals[1] = 'Test';
  EXECUTE STATEMENT :sql VALUES :vals;
END

получаю ошибку
Column does not belong to referenced table.
Dynamic SQL Error.
SQL error code = -206.
Column unknown.
ID.
At line 6, column 14.Этот MERGE в SQL Editor запускается, параметры запрашиваются и запрос выполняется.

С уважением, Vasilisk
...
Рейтинг: 0 / 0
02.09.2020, 17:03
    #39994915
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выполнение MERGE через EXECUTE STATEMENT
Чё-то наплодилось куча тем по IBEBlock с парой сообщений внутри.
Пожалуй, я заведу отдельную тему для этого. Пиши туда.
Этот баг завтра поправлю, там просто не проверяется на MERGE и поэтому не парсятся параметры.
...
Рейтинг: 0 / 0
02.09.2020, 17:18
    #39994928
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выполнение MERGE через EXECUTE STATEMENT
IBExpert
Пиши туда.
Хорошо
...
Рейтинг: 0 / 0
02.09.2020, 18:55
    #39994965
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выполнение MERGE через EXECUTE STATEMENT
IBExpert
Этот баг завтра поправлю,
Можно заодно и IBEScript выложить? Потому что тестирую в основном на нем
...
Рейтинг: 0 / 0
03.09.2020, 04:43
    #39995083
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выполнение MERGE через EXECUTE STATEMENT
_Vasilisk_
IBExpert
Этот баг завтра поправлю,
Можно заодно и IBEScript выложить? Потому что тестирую в основном на нем


Выложил.
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Выполнение MERGE через EXECUTE STATEMENT / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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