powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Необходимые и достаточные проверки операций
4 сообщений из 4, страница 1 из 1
Необходимые и достаточные проверки операций
    #32509850
Михаил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

Интересно если кто поделится соображениями о методологии проверок при операциях с базой данных.

После выполнения операции (или блока операций) требуется убедиться, что операция изменила данные только те и так, какие и как задуманы разработчиком. То есть затронуто целевое множество - не больше и не меньше, а изменения (новое содержание) соответствуют задуманному.

Чтобы сузить задачу, можно принять, что оперции выполняются на реляционной базе с помощью SQL.
Понятно, что это делается в зависимости от сложности операции, серьезности задачи и кучи ограничений (например производительности).
Опять же можно сузить по фактору серьезности до операций, не таких, которые отвечают за жизнь людей, атомную станцию или траекторию спустника ценой 10 миллиардов, но, скажем, таких, на которых реализуется коммерческая система и ошибки "очень нежелательны".

Может кто-то уже выработал для себя некоторую практическую методологию на этот счет, как например:
- у меня все запросы правильные (проверены при отладке), так что проверять при операциях нечего
- у меня вся ответственность на правилах ограничения целостности
- высчитываю кол-во записей, котоые попадают под операцию и сравниваю с реальным результатом
- пишу полную проверку результатов операции (какие записи и на что изменены)

Проблема в том, что не всегда все возможные ситуации удается имитировть при отладке.

У меня небольшой опыт по коммерческой разработке приложений с базами.
Хочется понять как все делается серьезно.
Я в курсе, только, как строятся "лимфатические системы" обычных программ.
Может подскажете что почитать...
...
Рейтинг: 0 / 0
Необходимые и достаточные проверки операций
    #32510085
Фотография Quark
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю модератор перенесет скоро эту темку в проектирование БД.

Все зависит от конкретной специфики приложений.

Например у меня ХД и основной критерий правильности это возрастание количества информации.

Поэтому после каждого Inserta проверяю на увеличение числовых и суммовых показателей в контексте загружаемой информации.
Если увеличились, то все ОК. Если не увеличились, то либо выходной день, либо проблемы. Если уменьшились(например суммы продаж), то значит траблы.
Плюс увеличение не должно сильно выскакивать за среднезагрузочное увеличение, иначе возможно гдето лишне накручиваются итерации.
...
Рейтинг: 0 / 0
Необходимые и достаточные проверки операций
    #32510095
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ключи первичные и вторичные служат у меня для контроля верности базы.
...
Рейтинг: 0 / 0
Необходимые и достаточные проверки операций
    #32510103
Фотография Alexes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор...реализуется коммерческая система и ошибки "очень нежелательны".
От всех ошибок очень трудно избавиться - это вопрос времени и денег, потраченных на разработку и тестирование.
автору меня все запросы правильные (проверены при отладке), так что проверять при операциях нечего
Проверять нужно не только при отладке. Главное в этом смысле - это тестирование. И вот при тестировании нужно постараться проверить все возможные ситуации.
авторвысчитываю кол-во записей, котоые попадают под операцию и сравниваю с реальным результатом
В принципе, такие проверки могут понадобиться, но, мне кажется, что перед операцией и вряд ли очень часто. Можно подумать еще над изменением в отдельных местах уровня изоляции транзакций.
Очень важно обрабатывать ошибки, тем более, в критических участках кода.
Итого: писать грамотный код и тщательно его тестировать :).
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Необходимые и достаточные проверки операций
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]