Главная страница
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.022 c
1-27066
Наташа
2002-08-28 11:24
2002.09.09
Сокращение объема EXE-файла


1-27084
Tornado
2002-08-27 15:42
2002.09.09
Компонент


14-27156
PVR
2002-08-11 10:14
2002.09.09
Пишем Property Inspector


14-27201
V.exeR
2002-08-14 21:41
2002.09.09
Бета-тестинг


3-26889
Alek_1
2002-08-20 02:45
2002.09.09
EhLib