powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / RETURNING из VEW... что не так?
3 сообщений из 3, страница 1 из 1
RETURNING из VEW... что не так?
    #39859541
есть таблица
TABLE LOG$APP_CONN (
LOG_ID BIGINT GENERATED BY DEFAULT AS IDENTITY,
APP_ID SMALLINT,
USER_NAME FB_RELATION_NAME /* FB_RELATION_NAME = VARCHAR(31) */,
LOG_DATETIME TIMESTAMP,
CLIENT_IP VARCHAR(34)
);

из соображений безопасности работа с этой таблицей ведется через простмотр

VIEW LOG$VWA$APP_CONN(
LOG_ID,
APP_ID,
USER_NAME,
LOG_DATETIME,
CLIENT_IP)
AS
SELECT LOG_ID, APP_ID, USER_NAME, LOG_DATETIME, CLIENT_IP
FROM LOG$APP_CONN
WHERE USER_NAME = CURRENT_USER

у которого есть триггер на вставку...


TRIGGER LOG$VWA$APP_CONN_BI0 FOR LOG$VWA$APP_CONN
ACTIVE BEFORE INSERT OR UPDATE OR DELETE POSITION 0
AS
DECLARE VARIABLE LOG_ID INTEGER;
BEGIN
IF (INSERTING) THEN -- только Insert
BEGIN
INSERT INTO LOG$APP_CONN (APP_ID)
VALUES (:NEW.APP_ID);
END ELSE
IF (UPDATING) THEN
BEGIN
END ELSE
IF (DELETING) THEN
BEGIN
END
END

где нужно вставлять только одно значение APP_ID, ибо остальные значения вставляются триггером самой таблицы

в ходе экспериментов
при вставке записи в таблицу
INSERT INTO LOG$APP_CONN (APP_ID) VALUES (:APP_ID) RETURNING LOG_ID

я спокойно получаю этот LOG_ID

а при вставке в просмотр
INSERT INTO LOG$VWA$APP_CONN (APP_ID)
VALUES (:APP_ID) RETURNING LOG_ID

возвращается всегда только NULL....

Как мне при вставке записи в просмотр получить это злосчастное LOG_ID??????????
...
Рейтинг: 0 / 0
RETURNING из VEW... что не так?
    #39859543
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Геннадий2128506Как мне при вставке записи в просмотр получить это злосчастное LOG_ID??????????

В триггере присвой значение new.log_id.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
RETURNING из VEW... что не так?
    #39859548
Дима, спасибо!
Пытался это сделать как параметр :NEW.LOG_ID, так даже не компилилось
А так NEW.LOG_ID ОК! заработало!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / RETURNING из VEW... что не так?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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