![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
IB 7.5 Как в триггере изнать сколько записей вернул подзапрос?
novill © (2006-11-09 11:52:00)CREATE TRIGGER ХХХ_BU0 FOR ХХХ
ACTIVE BEFORE UPDATE POSITION 0
AS
begin
...
select ХХХ.CODE from ХХХ ...
// Тут надо узнать сколько записей вернул запрос
end
Johnmen (2006-11-09 12:57:00) [1]
> novill © (09.11.06 11:52)
Сколько вернёт запрос
select COUNT(*) from ХХХ ...
novill (2006-11-09 12:23:00) [2]> [4] Desdechado © (09.11.06 12:11)
В курсе, но приходится
Desdechado (2006-11-09 12:11:00) [3]Обращаться с запросом к таблице XXX в триггере на таблицу XXX чревато трудноуловимыми логическими ошибками.
novill (2006-11-09 12:03:00) [4]Запрос может вернуть как ни одной, так и много записей.
Во! точноcountпоможет в данном случае. Я сразу не сообразил что можно запрос изменить.
А что аналога recordcount в языке SQL для процедур InterBase нет?
Romkin (2006-11-09 11:56:00) [5]В таком виде он должен вернуть либо одну запись, либо ничего. Ничего - по значениям переменных узнать можно, если больше одной - будет исключение "multiple rows in singleton select"
Sergey13 (2006-11-09 11:56:00) [6]100% уверенность - пробежаться циклом и посчитать.
99.9% - count перед/после основного запроса.