如何从ASP中的数据库中检索特定数据并将该数据放入变量中

时间:2013-05-14 23:34:54

标签: mysql vba asp-classic

问题:我有一个名为admin的数据库,其中包含idusernamepassword列。现在,我需要将此id放在名为Dim ID的变量中,以用于特定的用户名。

如果我运行此查询:

adoRS.Source = "SELECT * FROM admin WHERE username= '"& username &"' AND password ='"& password &"' "

我将获得数据库中的特定行和特定id。所以,问题是如何从上面的查询中检索id并将其放在名为ID的声明变量中

一个特定的解决方案是使用while循环,如下所示:

 do
  col1 = adoRS.Fields("id")
  id = col1
  adoRS.MoveNext
Loop While Not adoRS.EOF

由于我们在col1变量中只有一个数据,如果我们可以跳过do while进程会更好。所以问题是如何在不使用id循环语句的情况下检索数据并将数据放在while变量中。

1 个答案:

答案 0 :(得分:1)

使用ADO记录集时,如果您只想要该值,则可以抓取该值。

ID = adoRS.Fields("ID").Value

如果管理表将包含多个具有相同userName和Password的行,则您可能在其他地方遇到问题,但是希望将您正在使用ID执行的任何内容发送到方法,或者加载所有将ID分配到数组中。

如果有一些以上,getRows方法也可能有用。

(而且,实际上,如果你只想要ID,你就不应该做SELECT *。管理员的SELECT ID应该可以正常工作。当你构建那个SQL字符串时,清理USER和PASSWORD。考虑使用命令对象。不要存储密码,存储密码的哈希值。然后吃蔬菜。)