
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
05.08.2002, 16:30:37
|
|||
|---|---|---|---|
|
|||
Cascaded delete |
|||
|
#18+
Приветствую знатоков (и не) ламерский вопрос: не получается удалить trigger ом из связанной таблицы, когда из родителя удаляется данная. Например, был клиент, были у него данные в таблице ААА. Есть таблица ВВВ, где все заказы клиентов. Вот, этот клиент удаляется из таблицы ААА, там триггер на удаление, и надо все заказы, подлежашие ему, удалить из таблицы ВВВ. не получается использовать deleted таблицу. селект из этой таблицы дает нулл. на ms-sql 7.0 может всезнающий алл подскажет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.08.2002, 17:05:22
|
|||
|---|---|---|---|
Cascaded delete |
|||
|
#18+
Если Вы используете DRI, то ограничения по нему срабатывают до старта триггера, поэтому надо (в семерке) выбирать что то одно либо DRI либо ссылочную целостность поддерживать триггерами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.08.2002, 17:33:34
|
|||
|---|---|---|---|
Cascaded delete |
|||
|
#18+
Нет, почему же, можно и то и другое. Только для каскадного удаления придется писать процедуру. И вместо команды DELETE на родительскую таблицу вызывать эту процедуру. Ну а в процедуре сначала удаляются записи из дочерней таблицы, а потом запись из родительской. Двойная работа, согласен, но тут уж ничего не поделаешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.08.2002, 17:36:23
|
|||
|---|---|---|---|
Cascaded delete |
|||
|
#18+
Нет, почему же, можно и то и другое. Это не совсем и то и другое, с процедурой ссылочную целостность триггерами поддерживать не надо. :-) Кстати, вариант с процедурой считаю наиболее предпочтительным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.08.2002, 20:13:15
|
|||
|---|---|---|---|
|
|||
Cascaded delete |
|||
|
#18+
Или переходить на MSSQL 2000. Там есть INSTEAD OF -триггеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.08.2002, 09:48:48
|
|||
|---|---|---|---|
Cascaded delete |
|||
|
#18+
2 MrHope На самом деле это легко реализуется на 7-м, на 2000-й переходить необязательно. Во всяком случае на 4-м я так делал. И всё это делается на триггерах. Мне непонятна эта фраза: не получается использовать deleted таблицу. селект из этой таблицы дает нулл. Так не должно быть, посмотрите внимательней ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&tablet=1&tid=1821348]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
15ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 292ms |

| 0 / 0 |
