Delphi,数据库认证
我计划在我的程序中包括身份验证功能 我需要有关在表记录之间切换的信息。我当前的程序只读取第一条记录中的用户名和密码Delphi,数据库认证,delphi,Delphi,我计划在我的程序中包括身份验证功能 我需要有关在表记录之间切换的信息。我当前的程序只读取第一条记录中的用户名和密码 如何移动到后续的表记录?数据集有下一个方法,这样您可以遍历整个数据集 qDS.Open ; while not qDS.EOF do begin anyString := qDS.fieldbyname('usern').asString ; // will give you the username qDS.Next ; // go to the next reco
如何移动到后续的表记录?数据集有下一个方法,这样您可以遍历整个数据集
qDS.Open ;
while not qDS.EOF do
begin
anyString := qDS.fieldbyname('usern').asString ; // will give you the username
qDS.Next ; // go to the next record in the dataset.
end ;
qDS.close ;
只需使用
TDataSet.Locate
。在下面的所有内容中,我使用ds
表示TDataSet
变量
UserName := EditUserName.Text;
Password := EditPassword.Text;
if ds.Locate(UserName, ['UserNameField']) then
begin
if ds.FieldByName('Password').AsString = Password then
// Passwords match
else
// Passwords don't match
end
else
// User name not found
要从一个记录(行)移动到下一个记录(行),只需使用ds.next代码>,并移动到使用前的一个ds.Prior代码>。要转到第一行,请使用ds.first
,和ds.Last
转到最后一行
这确实是基本的数据库编程。您可能应该搜索一个教程来解释它,并完成它 听到这个消息太好了!:-)你们遇到了什么问题?问题在于,若当前记录为用户N,如何使程序切换到下一个记录。和pasw。检查失败您应该查找TDataSet.Locate方法。它将记录移动到匹配条件,如果没有找到记录,则返回false。嗯,我真的不知道你在说什么。我正在比较身份验证表单edit.text字段与DBedit.text字段。。。如果你想说应该添加哪些代码行,那就太好了,泰!!如果您的数据库支持SQL,那么从USERTABLE WHERE=:param1和=:param2
语句执行SQLSELECT COUNT(*)可能会更容易,而不是在数据集中导航