0

我试图让它工作,但它不起作用,因此想知道这里是否有人能够帮助我解决这个问题。问题是在 select 语句运行后,我无法将 SQL 查询列存储到 VBScript 变量中。我只是希望在 SQL 查询运行时将用户的名字和姓氏存储到数据库中 user_id 和密码匹配的变量中。这样我就可以像欢迎“名字,姓氏”一样显示他们的名字。我的数据库确实连接到数据库和所有内容,但我只是不知道如何将某些人的姓名从 oracle 存储到 VBScript 变量,我可以在同一页面上显示欢迎 John Smith 或其他内容。

请不要担心 SQL 注入的东西,目前不需要它。

以下是 ASP 文件代码:

<%@ Language=VBScript %>

<%user_id=Request("user_id") user_pwd=Request("user_pwd") %>

<% Set DBConn = Server.CreateObject("ADODB.Connection")
   DBConn.Open "Driver={Oracle in OraClient11g_home1};DBQ=ORCL;UID=ops$dbID;PWD=dbPWD;"
   Login = "SELECT USER_ID, USER_FIRSTNAME, USER_SURNAME FROM UserTable WHERE USER_ID = '" & user_id & "' AND USER_PWD='"& user_pwd &"';"

   Set QueryResult = DBConn.Execute(QueryToRun)

   QueryResult.Close

   DBConn.Close
%>

我什至尝试过response.write("USER_FIRSTNAME"),但它仍然不起作用,因为它需要首先从查询中存储到一个变量中,我不知道该怎么做:(

4

1 回答 1

2

下面是一个如何查询 oracle 数据库并返回数据读取器的示例,然后您可以在 VB 中对其进行迭代:

data_source = "Driver={Oracle in OraClient11g_home1};DBQ=ORCL;UID=ops$dbID;PWD=dbPWD;"
Set con = Server.CreateObject("ADODB.Connection")
con.Open data_source
Set rs = Server.CreateObject("ADODB.Recordset")
sqlread = "SELECT USER_ID, USER_FIRSTNAME, USER_SURNAME FROM UserTable WHERE USER_ID = '" & user_id & "' AND USER_PWD='"& user_pwd &"';"

rs.Open sqlread, con
Do while not rs.eof
  FName=rs.fields("USER_FIRSTNAME")
rs.Movenext
Loop
于 2013-03-08T12:14:07.287 回答