Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.09;
Скачать: CL | DM;

Вниз

sql   Найти похожие ветки 

 
NIKI   (2002-08-16 15:59) [0]

Объясните мне, пожалуйста.
В чём разница (при использовании SQL)
в методах open и execsql?


 
Mike Kouzmine   (2002-08-16 16:02) [1]

Один возвращает набор данных, а другой нет, наверное так


 
Leran2002 ©   (2002-08-16 16:03) [2]

open - возвращает набор данных (SELECT)
execsql - не возвращает ничего (UPDATE,DELETE,INSERT)


 
NIKI   (2002-08-16 16:04) [3]

Спасибо.


 
VAleksey ©   (2002-08-17 11:20) [4]

На самом деле и та и другая команда выполняют запрос SQL. Просто при команде Open TQuery ожидает получение курсора.


 
elv ©   (2002-08-17 13:45) [5]

А если не знаешь что произойдет, open или exec попробуй использовать нечто вроде этого (пример кажется из Шумакова/Фараонова)

try
Form.Query.Open;
except
on EDataBaseError do
begin
Form.Query.ExecSQL;
end;
end;


 
Александр Спелицин ©   (2002-08-19 10:00) [6]

2 elv:
В Вашем варианте запрос может быть выполнен дважды.
1-й раз при Query.Open, а если он не вернет данных, то и при
on EDataBaseError do
Form.Query.ExecSQL;

Правильный вариант (конечно для BDE):

try
Form.Query.Open;
except
on EDataBaseError do
begin
end;
end;



 
3JIA9I CyKA ©   (2002-08-19 12:17) [7]

try
Form.Query.Open;
except
on EDataBaseError do
begin // ??????????????????
end; // ??????????????????
end;




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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
6-27145
SDomsk
2002-07-02 15:04
2002.09.09
Socket-ы


1-27060
Krann
2002-08-27 13:37
2002.09.09
Позиция в Stream


3-26865
Slin
2002-08-19 02:08
2002.09.09
Update


14-27166
RV
2002-08-12 17:54
2002.09.09
в продолжение Есть ли жизнь на Марсе


1-27087
Filat
2002-08-28 12:08
2002.09.09
Какой компонент может нарисовать вертикальные линии?