Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как обр. ошибку ввода пол-ем двух один-х значен индексного поля [D7, MSSQL]


Andrew Tsib ©   (2004-10-17 06:11:00) 

Пользователь вносит в двух записях одинаковое значение в индексном поле. Как так обработать это событие чтобы приложение работало дальше(не закрывалось не глючило и т д. :-)) ). Бд заполняет делфи приложение. Спасибо заранее


Draught   (2004-10-18 09:43:00) [1]

СРАВНИТЬ!!!


term   (2004-10-17 20:31:00) [2]

индекс первичный небось :)


Andrew Tsib   (2004-10-17 16:40:00) [3]

я использую db-компонент(navigator). onposterror не ловит ошибку EOleException. По крайней мере я попробовал и не получаеться как ты мне предложил. Может ещё есть какие варианты. Буду благодарен.


сергей1   (2004-10-17 09:22:00) [4]

заворачиваешь form1.ADOQuery1.ExecSQL в try-except:

try
form1.ADOQuery1.ExecSQL;
except on e:exception do
begin
 if strpos(pchar(e.Message),pchar('PRIMARY'))<>nil then
begin
 showmessage('Нарушение первичного ключа !');
end;

если ввод при помощи db-компонентов, то используй событие onposterror твоего датасета. Там переменная Е содержит все информацию об ошибке


Vit@ly   (2004-10-17 08:48:00) [5]


> Спасибо заранее

Не за что, я т-е хо-у, ч-бы о-о не п-сь.


Наверх

Титульная страница Поиск, карта сайта Написать письмо