powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Получение входных данных ТРИГГЕРОМ в MSSQL
4 сообщений из 4, страница 1 из 1
Получение входных данных ТРИГГЕРОМ в MSSQL
    #32001811
Shef
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделал такой триггер но проблемма с текст типом данных.

Create trigger no_dubble on vacancy
For Insert as
declare @@Indata nvarchar , @@Inadd nvarchar , @@invac nvarchar
Set NOCOUNT ON
Select @@Indata=data , @@Inadd=addition , @@invac= vacancy from inserted
Select vacancy from vacancy where addition=@@Inadd and data=@@Indata and vacancy=@@invac
If @@rowcount =2
Begin
Rollback transaction
end

тепеь выдает другую ошибку
Server: Msg 311, Level 16, State 1, Procedure no_dubble, Line 5
Cannot use text, ntext, or image columns in the 'inserted' and 'deleted' tables.
Server: Msg 306, Level 16, State 1, Procedure no_dubble, Line 6
The text, ntext, and image data types cannot be used in the WHERE, HAVING, or ON clause, except with the LIKE or IS NULL predicates.

Как же тогда работать с этими типами данных? Интересует пржде всего text
...
Рейтинг: 0 / 0
Получение входных данных ТРИГГЕРОМ в MSSQL
    #32001813
beerman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблицы inserted и deleted не могут содержать поля с типами text, ntext и image.
...
Рейтинг: 0 / 0
Получение входных данных ТРИГГЕРОМ в MSSQL
    #32001819
Shef
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это я понял, но каков выход из положения? Советуют указатели , но как их юзать в данном случае?
...
Рейтинг: 0 / 0
Получение входных данных ТРИГГЕРОМ в MSSQL
    #32001834
beerman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В триггерах не пробовал, а обычно делается так:
..............................................................
-- получить указатель на столбец, содержащий текстовые данные
DECLARE @ptrval varbinary(16)
DECLARE @txtOffset int
DECLARE @txtSize int
SELECT @txtOffset=0 -- читаем текст сначала
SELECT @txtSize=400 -- по умолчанию 4Кб, хотя можно настроить и иначе
SELECT @ptrval = TEXTPTR(txtColumn) FROM myTable
READTEXT myTable.txtColumn @ptrval @txtOffest @txtSize
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Получение входных данных ТРИГГЕРОМ в MSSQL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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