|
|
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Люди подскажите пожалуста как мне сделать следующее. Надо вставит запись, но перед этим проверить кое что и по результатам проверки решить, вставлять или не вставлять. Может быть можно какой то параметр из BeforeInsert вернуть(или изменить). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:26 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Если нежно "ругнуться", то генери в триггере EXCEPTION. Если нужно "по тихому", то сделай триггер AFTER INSERT и в нём тихонько удаляй только-что вставленную запись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:34 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
в AfterInsert неполучиться, потому что осуществляеться проверка на циклы, поиском в глубину, ну и если сначало каряво вставить то ... вообщем понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:39 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Мне лично - нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:47 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
ватману понятно, что нужно делать эксепшон! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:47 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Вставляй через необновляемое представление. Навесь на это представление триггер и в триггере решай вставлять или нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:48 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Вообще то про понятно, я имел в виду что если цикл есть то поск не очень то закончиться, без дополнительных проверок, а в IB кстати нет ведь массивов( или я ошибаюсь). А вот идея насчёт неизменяемого представления мне нравиться, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:53 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Под циклом я имел ввиду то что одна запись таблицы ссылаеться на другую а та на треью, и вот надо что бы третья на первую вдруг ссылаться не стала ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:55 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Деревья строишь? Так здесь более логично исключение возбуждать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:56 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Подожди до вечера. Я пока трезвый, понять тебя ну никак не могу. Вот вечерком, приму грам 200 на душу, мож и уразумею. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 14:57 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Делай через представления. Очень удобно. Я подобную же проблему решил именно так - необновляемые представления ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 15:00 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
2 Gold Не исключения не хочу, хочу что бы тихо пригрохнула и не кому не сказала. 2 Мимопроходящий Удачного вечера :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 15:01 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
убил запись - спас дерево. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 15:02 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
А зачем говорить?) Можно же сгенерить и сразу словить исключение : when exception ... do begin end А при возникновении исключения оператор вроде дожен откатываться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 16:50 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Не майтесь. По-тихому, это одно слово: Abort ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 17:24 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Сам придумал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 18:17 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
ой... А разве BeforeInsert здесь не событие TDataset? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 18:44 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Вообще-то, мы про сервер. А ты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2004, 18:51 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
Всем огромное спасибо, я уже сделал через неизменяемые представления.Замечательно работает. А вот с Exсeptoin в тригере на AfterInsert, для таблицы чего то подтормаживает. Может делаю чего не так вот для представления Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. А вто для таблицы Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2004, 08:08 |
|
||
|
Как отменить вставку в BeforeInsert
|
|||
|---|---|---|---|
|
#18+
VatmanCREATE TRIGGER VIEW_LINKS_AI0 FOR VIEW_LINKS INACTIVE AFTER INSERT POSITION 0 Так INACTIVE , говоришь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2004, 10:05 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32431822&tid=1579087]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 249ms |
| total: | 500ms |

| 0 / 0 |
