Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/14: Рейтинг темы: голосов - 14, средняя оценка - 4.64
Temik

Тригер для удаления в варианте FOR EACH ROW для SQL 2000

13.10.2011, 15:55. Показов 2700. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Вот уперся, ни куда!
Нужно удалить 5 строк и dbo1 и точно такие же 5 строк из dbo2

Простейший триггер
T-SQL
1
2
3
4
5
6
7
8
9
CREATE TRIGGER trDbo1Del ON dbo.dbo1 
AFTER DELETE 
AS
 
DECLARE @code int
 
SELECT @code=code FROM deleted
 
delete from dbo2 where code=@code
Этот вариант удаляет только 1 строку 4 остаются.
Как пошагово для каждой строки удалить???
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.10.2011, 15:55
Ответы с готовыми решениями:

Microsoft SQL Server 2000 для профессионалов
Очень желал бы купить книгу 'Microsoft SQL Server 2000 для профессионалов'... Кто мог бы помочь с пересылкой в Германию?...

Генерация отчётов для SQL Server 2000
Всех с наступающим!!! Господа, проблема состоит в следующем. Не могу подконектить Crystal Reports 7.0 к базе в SQL Server 2000. ...

Как установить административную консоль для SQL Server 2000
Можно ли установить административную консоль на XP для SQL Server 2000, как, например, устанвливается консоль AD?

3
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
13.10.2011, 16:58
По идее
T-SQL
1
DELETE FROM dbo2 WHERE code IN (SELECT code FROM deleted)
0
Temik
16.10.2011, 10:42
Нет, так работать тоже не будет! Это просто по другому тот же запрос переписанный. Тригер срабатывает на событие а не на строку.
Вопрос решил так, вдруг кому то пригодится:
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TRIGGER trdbo1 ON dbo1 
AFTER DELETE 
AS
 
 
DECLARE @code int
 
Declare Cur cursor for SELECT code FROM deleted
 
open cur
fetch next from  cur into @code
WHILE (@@FETCH_STATUS <> -1)
    BEGIN
        IF (@@FETCH_STATUS <>2) 
        BEGIN
            delete from dbo2 where code = @code
        END
        FETCH NEXT FROM cur INTO @code
    END 
    CLOSE cur
 
    DEALLOCATE cur
Не зря говорят утро вечера мудренее -)
5 / 5 / 0
Регистрация: 20.02.2008
Сообщений: 141
17.10.2011, 11:09
>Нет, так работать тоже не будет! Это просто по другому тот же
>запрос переписанный. Тригер срабатывает на событие а не на строку.

Еще как будет. Ведь согласано справке deleted - это виртуальная _таблица_, которая содержит _все_ удаленные текушей командой записи.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.10.2011, 11:09
Помогаю со студенческими работами здесь

Как для MS SQL 2000 определить, кто удалил запись?
Подскажите, пожалуйста, как с точностью до логина и имени машины определить, кто удалил/добавил/изменил запись? Может, можно 'заглянуть' в...

Нужен скрипт для удаления job(s), в SQL Server Agent
Есть веб-апликация, которая при совершении некоторых определенных действий создает в SQL Server Agent job с определенным id, если эти же...

Нужен пример на JS для постраничного вывода запросов из БД Microsoft SQL Server 2000.
Люди, помогиет мне. Я уже просто устал. Нужен пример на JS для постраничного вывода запросов из БД Microsoft SQL Server 2000. Буду...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru