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

Работа с TQuery   Найти похожие ветки 

 
AntonSh   (2004-02-13 15:09) [0]

Есть такой код :
var
a: string;
vQ: TQuery;
b: integer;
begin
a:= "Select * from ...";
vQ.Clear;
vQ.Add(a);
vQ.Open;
...
...
end;
Могу ли я после этого сразу использовать выражение типа
b := vQ.FieldByName("...").AsInteger;
или нужно сделать ExecSQL


 
menart ©   (2004-02-13 15:15) [1]

Ты открыл уже! > vQ.Open;
это и есть ExecSQL


 
Johnmen ©   (2004-02-13 15:35) [2]

А где создание объекта vQ ???????????????7


 
Vlad ©   (2004-02-13 15:45) [3]


> menart © (13.02.04 15:15) [1]
> Ты открыл уже! > vQ.Open;
> это и есть ExecSQL

Это не есть ExecSQL.
В данной конструкции ExecSQL не нужен.


 
Desdechado ©   (2004-02-13 17:22) [4]

сначала надо создать
vQ:=TQuery.Create( Application );
потом использовать (Open и есть открытие результата запроса SELECT)
в конце не забудь сделать vQ.Close; vQ.Free;


 
Johnmen ©   (2004-02-13 22:40) [5]

>Desdechado © (13.02.04 17:22)

Забыл после создания - определить свойства...:)


 
kaif ©   (2004-02-14 04:55) [6]

Да еще рекомендуется создавать экземляр, а потом все делать в блоке защищенных ресурсов try-finally-end:

vQ := TQuery.Create(nil);
try
...
finally
vQ.Free;
end;

Дело в том, что существуют ситуации, когда при открытии запроса происходит ошибка (например, недоступен сервер). И вообще это хороший стиль.

Я обычно использую конструкции с with. Например:

with TIBQuery.Create(nil) do
try
Transaction := ...
SQL.Text := ...
Open;
... = FieldByName("...").AsInteger;
finally
Free;
end;



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

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



Память: 0.46 MB
Время: 0.033 c
14-43887
Xelibris
2004-02-24 17:57
2004.03.14
Просто почитайте...


3-43391
AntonSh
2004-02-13 15:09
2004.03.14
Работа с TQuery


3-43382
Yermek
2004-01-25 21:58
2004.03.14
Paradox в сети


14-43885
wasilla
2004-02-20 17:08
2004.03.14
Все качають Асп Линух 9


14-43800
NeyroSpace
2004-02-19 13:58
2004.03.14
MicroSoft ISA




   Наверх