metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-04-07 09:00 pm

А вот еще про разницу между СУБД

Выполняем в транзакции ошибочный запрос (переполнение или нарушение констрейнтов)
Firebird: текущий запрос атомарно не выполняется, транзакция остается активной и позволяет выполнять команды дальше.
Postgresql: транзакция становится некошерной и в ней более ни одна команда не выполняется.

Теоретически, против косяков в клиентском коде типа отсутствия обработки ошибок, второй вариант кажется более разумным.

[identity profile] enternet.livejournal.com 2013-04-07 09:09 pm (UTC)(link)
А откуда у вас берутся ошибки в транзакциях? Может быть стоит освоить оператор MERGE? Я не в курсе, есть ли он или аналоги в перечисленных БД.

[identity profile] fraks-nsk.livejournal.com 2013-04-08 01:49 am (UTC)(link)
MERGE в Firebird есть, но это тут ни при чем.
Откуда берутся ошибки - в исходном посте написано, в первой строке, в скобочках.
Edited 2013-04-08 01:49 (UTC)

[identity profile] enternet.livejournal.com 2013-04-08 11:01 am (UTC)(link)
Что интересно, автор меня понял - а ты нет.

[identity profile] fraks-nsk.livejournal.com 2013-04-08 03:29 pm (UTC)(link)
IMHO наоборот.

[identity profile] berezovsky.livejournal.com 2013-04-08 11:10 am (UTC)(link)
Там база ошибками сыплет от наплыва запросов, а не запросы из-за нарушений целостности.

[identity profile] metaclass.livejournal.com 2013-04-08 11:12 am (UTC)(link)
Не, это два разных случая. У меня было и то и другое - старый провайдер и странные глюки в нем под нагрузкой и отдельно нарушения целостности.

[identity profile] metaclass.livejournal.com 2013-04-08 04:26 am (UTC)(link)
Автоматическая тестилка. Она выполняет и обычные и ошибочные операции.