如何获取SQL查询的结果?

Raf*_*ari 5 delphi iteration dataset delphi-2010

使用Delphi 2010,我使用TSQLQuery和TSQLConnection连接到远程MySQL服务器.我使用了如下SQL查询:

SQLQuery1.SQL.Text := 'SELECT * FROM registered WHERE email="'+email+'" and login_pass="'+password+'"';

SQLQuery1.Open; // Open sql connection
Run Code Online (Sandbox Code Playgroud)

如何列出或显示此查询选择的数据?

当我输入

SQLQuery1['who']; // The resault is : James Kan
Run Code Online (Sandbox Code Playgroud)

我认为它显示了列表中的最后一项.但我希望显示每个项目,就像我在PHP中使用foreach循环一样.我怎样才能为每个项目创建一个TLabel?

ain*_*ain 12

你只需迭代结果集就好了

SQLQuery1.Open;
SQLQuery1.First; // move to the first record
while(not SQLQuery1.EOF)do begin
   // do something with the current record
   ...
   // move to the next record
   SQLQuery1.Next;
end;
Run Code Online (Sandbox Code Playgroud)

  • 如果查询已经处于活动状态且在最后一条记录上,则在循环之前导航到"First"记录. (2认同)