На правах рекламы:
ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Авторитетность издания

ВАК - К1
RSCI, ядро РИНЦ

Добавить в закладки

Следующий номер на сайте

2
Ожидается:
16 Июня 2024

В Калужском университете им. К.Э. Циолковского разработан универсальный метод формирования информативных сообщений об ошибках реляционных БД, вызванных их ограничениями

22.02.2012

При создании программ, работающих с реляционными БД, важным является возможность формирования информативных сообщений об ошибках, вызванных изменениями в БД. К сожалению, данному вопросу практически не уделяется внимания ни в отечественных, ни в зарубежных публикациях, хотя формирование сообщений об ошибках БД в программах часто может требовать довольно значительного объема работ.

Следует отметить, что СУБД при возникновении ошибок формируют сообщения, но они часто не содержат достаточной информации, необходимой пользователю для выявления причины ошибки и ее устранения.

Правильно интерпретировать непосредственные сообщения сервера БД обычному пользователю довольно сложно, так как нередко он не имеет достаточных знаний в области реляционных БД и времени, чтобы разбираться с внутренними алгоритмами работы БД и программы. Поэтому разработчики обычно программно формируют сообщения о наиболее характерных ошибках БД, которые будут всем понятны.

При таком подходе проблема заключается в том, что с усложнением БД количество возможных ошибок увеличивается, а формирование сообщений даже об однотипных ошибках нередко реализуется индивидуально для каждой транзакции. Необходимо написание кода практически для каждой возможной ошибки, однако часть ошибок, даже о которых разработчику известно, может оказаться без соответствующих сообщений – в таких ситуациях, как правило, выводится общее сообщение об ошибке или непосредственное сообщение сервера БД, которые в большинстве случаев не могут помочь пользователю выявить причину ошибки и исправить ее.

Подробное описание дается в статье «Обработка ошибок реляционных баз данных», автор Лихачёв В.Н. (Калужский университет им. К.Э. Циолковского).