![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как обр. ошибку ввода пол-ем двух один-х значен индексного поля [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]
> Спасибо заранее
Не за что, я т-е хо-у, ч-бы о-о не п-сь.