Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
БД: Sybase ASA 9.0.2 Есть таблица в БД target, есть временная таблица #tmp на таблице target - стоит триггер BEFORE INSERT который фильтрует данные вставляемые из #tmp в target. триггер : ... if field_1 = 0 then rollback trigger; end if; ... т.е. если нас не устраивает условие то rollback trigger; начинаю вставку типа insert into target (field_1,field_2,field_3) select field_1,field_2,field_3 from #tmp нифига - 0 rows inserted, а если insert into target (field_1,field_2,field_3) select field_1,field_2,field_3 from #tmp where field_2 = 'my' - вставляются записи :) ... триггер отрабатывает в таблице #tmp = 300000 записей КАК ЛЕЧИТЬ? В чем ДЕЛО? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 08:45 |
|
||
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
Не очень понятно, что Вы хотите. Во первых ROLLBACK TRIGGER в отличие от ROLLBACK откатывает не всю транзакцию, а только действия, производимые внутри триггера. Если после выполнения ROLLBACK TRIGGER не указана команда возврата ошибки RAISERROR, то операция над таблицей будет просто молча выполнена. Обьясните суть задачи, есть подозрение, что Вы не по назначению используете ROLLBACK TRIGGER. -- www.rusug.ru - портал русскоязычной группы пользователей Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 09:48 |
|
||
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
Да просто триггером обрабатывать записи которые в таблицу приходят, а те которые не прошли по какому либо условию - просто не вносить в таблицу. И почемуто подумалось что триггером BEFORE INSERT это делать удобнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 09:53 |
|
||
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
просто фильтровать вставляемые данные триггером BEFORE INSERT, т.е. если условие не выполнено - просто откатывать вставку записи ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 09:57 |
|
||
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
примерно так? Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 10:42 |
|
||
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
Stan Marsh Изначально неверный подход. Вы на insert пытаетесь сделать delete, выполнив rollback. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 12:35 |
|
||
|
Помогите плз. замучался совсем с вставкой
|
|||
|---|---|---|---|
|
#18+
Вообще-то такие задачи надо решать через сheck. Код: plaintext 1. 2. 3. 4. --- http://www.rusug.ru] Портал рускоязычной группы пользователей Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 18:10 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=33780238&tid=2012797]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
65ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 226ms |
| total: | 395ms |

| 0 / 0 |
