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

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
30.01.2001, 11:05
    #32001813
beerman
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение входных данных ТРИГГЕРОМ в MSSQL
Таблицы inserted и deleted не могут содержать поля с типами text, ntext и image.
...
Рейтинг: 0 / 0
30.01.2001, 11:35
    #32001819
Shef
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение входных данных ТРИГГЕРОМ в MSSQL
Это я понял, но каков выход из положения? Советуют указатели , но как их юзать в данном случае?
...
Рейтинг: 0 / 0
30.01.2001, 16:52
    #32001834
beerman
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение входных данных ТРИГГЕРОМ в MSSQL
В триггерах не пробовал, а обычно делается так:
..............................................................
-- получить указатель на столбец, содержащий текстовые данные
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
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Получение входных данных ТРИГГЕРОМ в MSSQL / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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