|
|
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Уважаемые мастера! Есть 2 таблицы. В одной накладные(ключевое поле - N накладной), а в другой товар(ключевое поле - счетчик) по этим накладным. По идее, при удалении накладной из одной таблицы, должен удаляться весь товар по этой накладной из другой (у них связь по номеру накладной и каскадное удаление). Но на практике удаление происходит, если одной накладной соответствует только одна запись в таблице с товаром, если 2 и больше, то выдает ошибку (мол, подзапрос вернул более одного значения). Может кто знает, как с этим бороться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:33 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
сделать связь таблиц один-ко-многим ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:37 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Внешний ключ таблицы строк накладных-номер накладной? Если стоит "каскадное удаление" - все должно удаляться. Ты чего-то недоговариваешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:38 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
В подчиненной табле должен быть внешний ключ?Он есть?Организовывать связь по полям со счетчиком вариант плохой! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:38 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
А по какой связи у тебя тогда "Каскадное удаление" стоит? Я думал по связи "ЗаголовкиНакладной.НомерНакладно=СтрокиНакладной.НомерНакладной". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:45 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
первичный ключ в таблице с накладными, а внешний ключ в подчиненной таблице по номеру накладной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:45 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
labanga, Ты нас где-то дезинформируешь. Все должно работать (удалять). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:49 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
может какая-то фигня в настройках аксэса, потому что и связь есть и каскадное удаление стоит и удаляет, но только если 1 подчиненная запись, а если 2 то выдает ошибку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:52 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
И чего там в ошибке пишет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:53 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=,<,> or when the subquery is used as an expression ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:57 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
а может у тебя какой триггер висит на этих таблах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 15:59 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Причем тут подзапросы, я чего-то не понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:00 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Может у тебя в запросе не удаление туфта к-н? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:02 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
да, триггер висит - при удалении из подчиненной таблицы происходит обновление 3-ей таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:02 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Попробуй руками удалить строчку, у которой есть "подчиненные" и посмотреть, отработает ли каскадное удаление... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:03 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
так я руками и делаю. когда 1 подчиненная запись, то все работает как нужно, но когда их 2, то выдает ошибку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:06 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
>при удалении из подчиненной таблицы происходит обновление 3-ей таблицы так здесь собака и порылась. на этом он и стопорит. вываливай код, будем думать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:08 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Тогда убери этот триггер, и попробуй без него, если отработает - дело в триггере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:09 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Да и вообще видимо это в другой форум ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:16 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
убрал триггер и все заработало, но в чем тут дело? этот триггер обновляет данные в 3-ей таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:16 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
в чем дело, в чем дело. В ТРИГГЕРЕ ДЕЛО!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:19 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
sasha_1, Кстати, интересно узнать, что это такое - триггер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:21 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
Именно в триггере и дело Который, очевидно, расчитан на удаление только одной строки Используется там что-нибудь типа Where чтото = (Select ID From Deleted) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:22 |
|
||
|
каскадное удаление
|
|||
|---|---|---|---|
|
#18+
>Where чтото = (Select ID From Deleted) во-во и я о том же. 2 Varan триггер - енто процедурка такая, которая запускается автоматом после изменения/удаления данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2003, 16:24 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32260169&tid=1679505]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
75ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 356ms |

| 0 / 0 |
