Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.06;
Скачать: 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 вся ветка

Текущий архив: 2003.03.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
14-17263
Ketmar
2003-02-19 10:58
2003.03.06
где спереть то, о чем здесь нельзя писать к BlackBox-шаровара?


3-16912
PrettyFly
2003-02-15 15:39
2003.03.06
Финкции в SQL


1-17117
Alessio2003
2003-02-22 00:13
2003.03.06
Доступ к RichEdit


3-16867
Roman Go
2003-02-18 10:04
2003.03.06
Кто нибудь видел DBGrid


9-16838
3d[Power]
2002-10-02 01:02
2003.03.06
Порт под линукс.