powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблема с BLOB
4 сообщений из 4, страница 1 из 1
Проблема с BLOB
    #32026947
Cerber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi All

Одним из атрибутов таблицы А, является BLOB поле.
Возможно ли написать триггер, который при удалении записи из таблицы А всталял данные из удаляемого BLOB поля в таблицу Б?
...
Рейтинг: 0 / 0
Проблема с BLOB
    #32026955
Dankov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет такой возможности.

Либо удаляй процедурой с предварительным сохранением, либо не удаляй вовсе, а ставь признак "удалено" в специально заведенном поле.
...
Рейтинг: 0 / 0
Проблема с BLOB
    #32026969
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MS SQL2000

"In a DELETE, INSERT, or UPDATE trigger, SQL Server does not allow text, ntext, or image column references in the inserted and deleted tables if the compatibility level is equal to 70. The text, ntext, and image values in the inserted and deleted tables cannot be accessed. To retrieve the new value in either an INSERT or UPDATE trigger, join the inserted table with the original update table. When the compatibility level is 65 or lower, null values are returned for inserted or deleted text, ntext, or image columns that allow null values; zero-length strings are returned if the columns are not nullable.

If the compatibility level is 80 or higher, SQL Server allows the update of text, ntext, or image columns through the INSTEAD OF trigger on tables or views. "
...
Рейтинг: 0 / 0
Проблема с BLOB
    #32026985
Cerber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо так все заработало.

CREATE TRIGGER [TRIG_DEL_TABLE_A] ON [sysdba].[TABLE_A]
INSTEAD OF DELETE
AS

INSERT INTO TABLE_B (FIELD_ID,FIELD_NOTES)
SELECT A.FIELD_ID, A.FIELD_NOTES FROM TABLE_A A, DELETED D
WHERE A.FIELD_ID = D.FIELD_ID

DELETE FROM TABLE_A WHERE FIELD_ID IN
(SELECT FIELD_ID FROM DELETED)


RETURN
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблема с BLOB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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