|
|
|
нарушение constraints в промежуточных sql-выражениях
|
|||
|---|---|---|---|
|
#18+
Есть такая проблема: надо выполнить некоторую группу sql-выражений. В начале и в конце все constraints выполнены, но после каждого выражения (за исключением последнего) они нарушаются, поэтому всю группу выполнить не удается (типа constraint violated и все такое). Можно ли как-то сказать что вся группа - это на самом деле как бы одно выражение и coinstraints т.о. надо проверять только в конце? Или может можно как-то отключить их только в текущей сессии (т.к. совсем их отключать не охота, а то влезет кто-нить как раз в этот момент и все испортит) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2002, 19:25 |
|
||
|
нарушение constraints в промежуточных sql-выражениях
|
|||
|---|---|---|---|
|
#18+
т.к. удаление автоматом из ссылающихся таблиц без выдачи ошибок не устраивает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2002, 19:33 |
|
||
|
нарушение constraints в промежуточных sql-выражениях
|
|||
|---|---|---|---|
|
#18+
можно, но тогда constraints надо создать как defferable. Затем в начале транзакции (группы) надо дать выполнить: SQL>SET CONSTRAINTS ALL DEFERRED; после этого все эти constraints будут включены и проверены только при коммите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2002, 19:38 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32072216&tid=1992640]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
166ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 214ms |
| total: | 466ms |

| 0 / 0 |
