Вниз
Скачать: 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.018 c
3-43362
tytus
2004-01-16 14:07
2004.03.14
Перенос проги н а комп без BDE


3-43304
MadGhost
2004-02-11 22:42
2004.03.14
драйвер, для работы с базой данных, в текстовом файле?


1-43631
stud
2004-03-02 13:46
2004.03.14
включение/выключение numlock.......


1-43582
my4ga
2004-02-27 14:07
2004.03.14
музыка


7-43909
Rono
2003-12-23 21:38
2004.03.14
Как программно определить номер телефона.




   Наверх