"Мадорский Г.В." ...
>
> Я тут решил поэкспериментировать и наладить ведение лога в базе в виде SQL
> скрипта. Создал табличку
>
> CREATE TABLE SQL_LOG (
>     ID     INTEGER NOT NULL,
>     USER_  VARCHAR(32) DEFAULT current_user,
>     TS     TIMESTAMP DEFAULT 'now',
>     OPR    VARCHAR(4096)
> );
>
> ALTER TABLE SQL_LOG ADD CONSTRAINT PK_SQL_LOG PRIMARY KEY (ID);
>
> Написал программку, которая автоматом генерит текст триггеров. Триггеры, на
> основании значений переменных .old и .new создают текст sql оператора,
> который обеспечит те же изменения, что происходят с текущей строчкой, и
> заносят его в табличку SQL_LOG.

    Не будет это работать. Блобы и double мимо кассы пролетят

> Поизменял данные в IBExperte. Все вроде
> работает, скрипт генериться. Но заметил одну особенность - при коммите
> транзакции, даже если изменил одну запись, происходит небольшая задержка.
> Совсем небольшая, но все-таки на глаз уловимая. При этом обязательно диск
> дергается. Вот закрались сомнения, ежели все это внедрить - не получу ли
> ощутимых тормозов при многопользовательской работе?
> Экспериментировал на FB 2.0. На своем компьютере, под XP.

    Ну и залей лимон записей в логгируемую таблицу - узнаешь ;)

--
Хорсун Влад


Ответить