powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / db2 constraint
7 сообщений из 7, страница 1 из 1
db2 constraint
    #36411431
olzhas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проектируем новую систему.
В новой системе будем создавать таблицы и ограничения.
Сразу хочу рассказать о том как я себе представляю ограничения.

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

Вопрос :
Как вы относитесь к тому что все проверки будут на стороне сервера СУБД, а не на стороне приложения (Сервера приложения)?
как мне отлавливать ограничения? так как допустим вставка в таблицу дает вот такую ошибку
Код: plaintext
1.
 DB2 SQL error: SQLCODE: - 407 , SQLSTATE:  23502 , SQLERRMC: TBSPACEID= 2 , TABLEID= 1298 , COLNO= 1 
 Message: Assignment of a NULL value to a NOT NULL column "TBSPACEID=2, TABLEID=1298, COLNO=1" is not allowed.
Ну не парсить же?
...
Рейтинг: 0 / 0
db2 constraint
    #36411490
Vladimir Kiselev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
olzhas,

На чём пишете? Хранимые? Процедуры, функции?
Где Вам надо ошибку ловить?
...
Рейтинг: 0 / 0
db2 constraint
    #36411578
olzhas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vladimir Kiselev,

пишем на Java используем JDBC. Нужно выловить ошибку в клиенте, обработать ее и выдать читабельный результат.
...
Рейтинг: 0 / 0
db2 constraint
    #36433343
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
olzhas,

А чем ты будешь ходить в БД? Напрямую или через ORM? Если через ORM, то он посредством установления ограничений в сущностях, берет на себя заботу о правильности данных.
В любом случае главное чтобы данные в БД правильные ложились, поэтому на БД обязательно реализовывать ограничения. Ограничения в сущностях даст тебе возможность получать более внятные исключения и бросать Бизнес-исключения которые можно показывать пользователю.
...
Рейтинг: 0 / 0
db2 constraint
    #36433382
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не совсем верно выразился. Ошибки связанные с ограничениями в любом случае нужно парсить и превращать в Бизнес исключения. Просто в случае с ORM у тебя будут сущности, для заполнения которых можно предусмотреть утилитные методы которые будут валидировать данные в сущностяхи если что - включать красную лампочку и кидать бизнес-исключение. ORM от парсинга ошибок не спасет.
...
Рейтинг: 0 / 0
db2 constraint
    #36433753
FireCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как плюс для парсинга ошибок, в DB2 все они хорошо клиссифицированы. Довольно просто выбирать ключевые слова из сообщений.
Можно создать структуру данных для хранения "человеческих" описаний и при возникновении ошибки от БД пытаться найти ее толкование в этой структуре.

PS: когда-то так делал и остался доволен результатом. Если до пользователя, вдруг, доходило сообщение от СУБД, то у него была возможность оповестить об этом и дальше достаточно было внести данные в базу.
...
Рейтинг: 0 / 0
db2 constraint
    #36436473
mustaccio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут все написано: http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/tjvjcerr.htm
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / db2 constraint
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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