DELPHI中的TADOQuery有返回值吗?是什么?
比如我执行一条SELECT语句,请问它有返回值吗?返回的是什么?如果我想做个登陆,查询一个人的账号,看看有没有这个人,该怎么做?如果执行INSERT,UPDATE,DEL...
比如我执行一条SELECT语句,请问它有返回值吗?返回的是什么?如果我想做个登陆,查询一个人的账号,看看有没有这个人,该怎么做?
如果执行INSERT,UPDATE,DELETE呢?
不明白啊,没用到ADOQuery啊,写法不是应该ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sql);
ADOQuery1.Open;
这样吗? 展开
如果执行INSERT,UPDATE,DELETE呢?
不明白啊,没用到ADOQuery啊,写法不是应该ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sql);
ADOQuery1.Open;
这样吗? 展开
展开全部
对于select之类的语句,返回一个包含指定条件的记录集。
如:
with adoquery1 do
begin
active := false;
sql.text := 'select * from 表 where username = ''' + edit1.text + '''';
active := true;
if recordcount > 0 then
showmessage('有此人帐号!')
else
showmessage('无此人帐号!');
end;
对于insert,update...这类的不返回记录集的语句,应该用
with adoquery1 do
begin
active := false;
sql.text := 'insert into 表(a,b) values(''asdfa'', ''sfsdf'')';
execsql;
end;
你打出的用法是正确的,不过它只适用于返回记录的语句,对于不返回记录集的语句的话,只需要把
ADOQuery1.Open;
换成
ADOQuery1.ExecSQL;
或用我上面列出来的方法也行。
如:
with adoquery1 do
begin
active := false;
sql.text := 'select * from 表 where username = ''' + edit1.text + '''';
active := true;
if recordcount > 0 then
showmessage('有此人帐号!')
else
showmessage('无此人帐号!');
end;
对于insert,update...这类的不返回记录集的语句,应该用
with adoquery1 do
begin
active := false;
sql.text := 'insert into 表(a,b) values(''asdfa'', ''sfsdf'')';
execsql;
end;
你打出的用法是正确的,不过它只适用于返回记录的语句,对于不返回记录集的语句的话,只需要把
ADOQuery1.Open;
换成
ADOQuery1.ExecSQL;
或用我上面列出来的方法也行。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询