
Что только ради меньшего кол-ва блокировок?
Или ну не знаю например ввести на некоторые поля в настройке базы что-бы не было многоверсионности. и скорость была б нормальной и проблем меньше. Что то вроде charset параметра, было бы здорово.
или хотябы логи транзакции писать не в базу.
А так delete from нормально не сделать, и голову себе морочить не хочется, нужно писать программы, а не мучится, как же сделать так что-бы не наплодилось и не висло все в итоге, получается просто большая головная боль с построением программы при использовании firebird
И главное Вот пишешь программу, а беда в том что не уверен на все 100% все ли примхи firebird учтены.
2. Как же идеологически правильно работать с Firebird что-бы было минимальное кол-во версий, соответственно не росла база и не было тормозов. Вот что бы после работы с базой никаких версий не было, а произошла сборка мусора сразуже.
Пусть уже у пользователя подтормаживает каждый раз, чем один раз но на долго.
Вот что-то там delete или update сделали, а потом делаем select и не всегда то мусор убирается.
Как сделать так что-бы при закрытии программы всегда не было не одной мусорной записи.
Вот как пример пока тупиковой ситуации.
Есть две таблицы связанные ключем, главная и подчиненная. (cascade)
Удаляем запись из главной, автоматически удаляются из подчиненной записи, гадкий мусор появляется. естественно никто теперь select для подчиненной таблицы не сделает и по сути мусор почти навсегда там.
(до sweep, restore,backup)