Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере? / 4 сообщений из 4, страница 1 из 1
08.01.2002, 06:49
    #32020269
XDefender
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере?
(MS SQL 2000)
Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере?

т.е. я в триггере в самом начале хочу провереть, сколько у меня записей в INSERTED.
Есть два варианта:

1)
(SELECT COUNT(ID) FROM INSERTED)

2)
@@ROWCOUNT

Меня привлекает больше второй способ, так как он быстрее. Но вопрос: Всегда ли он будет правильно работать ?

К примеру в начале у меня будет запущен INSTEAD OF триггер, а потомом обычный, а в нем и нужно все это проверить...
...
Рейтинг: 0 / 0
08.01.2002, 11:37
    #32020297
Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере?
Правильно только через
SELECT COUNT(*) FROM inserted

Другое дело, что мне это ни разу не потребовалось
...
Рейтинг: 0 / 0
08.01.2002, 12:04
    #32020298
SergSuper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере?
В принципе это вполне может понадобиться, например что бы узнать на что триггер сработал - удаление, апдейт или вставку.

Я обычно в таких случаях пишу вначале триггера примерно так:

declare @ins_cnt int, @del_cnt int
select @ins_cnt=count(*) from inserted
select @del_cnt=count(*) from deleted

Использование имени поля вместо звёздочки (COUNT(ID)) выдаст количество не-null значений, я не уверен что это то, что хотелось.
...
Рейтинг: 0 / 0
08.01.2002, 12:22
    #32020301
Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере?
А не нужно узнавать, для чего вызван триггер.
Гораздо правильнее создать три разных триггера.

Если у Вас нет никаких автоматизирующих средств по работе с SQL-скриптами, можете попробовать SQL-редактор c макроподстановками от http://www.sqlide.com/
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как лучше всего узнать, сколько записей находится в таблице INSERTED в триггере? / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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