![]() |
|
|
![]()
|
|
| spawn1984 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
Кто-нибудь знает как поймать исключение при добовлении записи в БД. У меня в БД добовление записи идет через компонент DBTable...подскажите, очень надо...
|
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 14 Всего: 207 |
А что это за компонент такой? -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| spawn1984 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
Он находиться на вкладке BDE...у меня с таблицей access связь идет через него
|
|||
|
||||
| Cetus |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 18.4.2004 Репутация: нет Всего: 1 |
try
Table1Field1.asString := 'asd'; или Table1.Fields.FieldByName['ads'].AsString := 'asd'; except on e: exception do begin // возникло исключение e.MEssage := 'глюк в БД'; raise end end; а вообще почитай лучше доки по исключениям --------------------
Легко внести изменения в код.Трудно сделать это корректно. |
|||
|
||||
| bursa |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 98 Регистрация: 25.2.2005 Где: Липецк Репутация: 1 Всего: 1 |
Table1-OnPostError используй
чтото типа такого procedure TForm3.Table1PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction); begin Table1.Cancel; Table1.Refresh; end; или такое procedure TForm3.Table1DeleteError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction); begin MessageBox(0,'что то такое',nil,mb_Ok+MB_SYSTEMMODAL); Table1.Refresh; end; |
|||
|
||||
| spawn1984 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
Еще один вопросик, может кто-нибудь знает на него ответ...смотрел в хелпе по делфи, ничего стоящего там не нашел...
есть две формы, на одной находиться сама база-главная таблица(просмотр)(соединение через ADO), на второй вводяться данные в базу которая находиться на форме 1(соединение через ADO), ввод происходит через DBLookupComboBox1 при выборе из списка какой либо записи, должно происходить или ввод, или исключение если запись существует,возможно ли сделать исключение на выбор записи из списка.. |
|||
|
||||
| Dimich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 247 Регистрация: 25.8.2004 Где: Брянск Репутация: 3 Всего: 7 |
Насколько мне известно, исключение должно генерироваться при добавлении уже существующей записи в БД. Есть 2 варианта:
1. Перед insertом проверять selectoм существование записи. Недостаток: для многопользовательской БД не подходит. 2. Создать в таблице уникальный индекс по полям, которые не допускают повторения и в этом случае обрабатывать исключения в программе при выполнении Insertа при помощи конструкций дельфи хоть как try...except. З.Ы. Ответ относится к первому вопросу. На будущее, пожалуйста, создавай для нового вопроса новую тему. Это сообщение отредактировал(а) Dimich - 1.3.2005, 08:50 --------------------
Не работает - исправь, работает - не трогай!!! |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |