Вниз
Скачать: CL | DM;

Повтор вопроса - как выполнить запросы без ошибок?   Найти похожие ветки 

 
nkrainev   (2003-02-14 22:05) [0]

Исходные данные:

Delphi 7. MySQL. Zeos (компоненты для доступа к БД)

Описание проблемы:

Необходимо выполнить ряд запросов к БД. Запросы - вставки записей INSERT. Имеются уникальные поля и если я пытаюсь вставить запись, которая уже в таблице есть, Дельфи выдает ошибку. Ее обработать мне удалось, но не удалось заставить TZBatchSQL выполнить все остальные запросы. Т.е. как только этот компонент находит ошибочный запрос, он сразу завершает все действия. Это грустно.

Вопросы:

Возможно ли все-таки выполнить все запросы, а ошибочные, допустим, посчитать (но это, впринципе, не так важно)? Или придется выполнять запросы по одному ( ОЧЕНЬ неудобно)?

____________
Спасибо за внимание,
Николай


 
happyboy ©   (2003-02-15 15:38) [1]

Try
Запрос.
Except
Что делать, если запрос ошибочный.
End;


 
jocko   (2003-02-15 15:44) [2]

На мой взгляд надо просто пересмотреть алгоритм, если ты на клиенте построчно перебираешь набор данных и вставляешь по записи, то это неэффективно...
Кроме того, зачем вставлять записи которые есть?
Сделай выборку только тех которых нет + необходимые условия, что-нибудь вроде

INSERT INTO SomeTable_1
SELECT SomeField
FROM SomeTable_2
WHERE SomeField not in (SELECT SomeField
FROM SomeTable_1 )
AND SomeField > ...или еще что


 
PrettyFly ©   (2003-02-15 15:58) [3]

IF not QuerySuper.Locate(FieldName,Value,[]) Then
QuerySuper.Insert...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.018 c
14-17291
SPeller
2003-02-11 19:47
2003.03.06
---|Ветка была без названия|---


1-16997
jinn
2003-02-23 15:20
2003.03.06
нахождение нужной суммы в списке чисел


1-17078
swamp
2003-02-25 17:42
2003.03.06
Увеличить на год


14-17313
hatchy
2003-02-15 14:24
2003.03.06
Ошибка в коде


9-16845
SashaS
2002-10-02 17:33
2003.03.06
странная dxInput.mouse




   Наверх