|
代码: cmd.Execute , Array(userName)
再比如,你的一个 Access 存储过程这么写:
代码: select * from Users where UserName = p_UserName and BookTitle = p_bookTitle
你可以就这么执行,通过传入参数值数组,但是顺序要对应:
代码: cmd.Execute , Array(userName, bookTitle)
OK,看看我们的例子中使用的两个查询,一个是写入数据。写好 SQL 语句后保存并命名。
另一个读取数据的存储过程代码。
(二)使用存储过程
然后我们可以在 ASP 程序中调用这些存储过程了。
这里可以看到为什么我说 Access 中的查询就是它的存储过程——我们的 Command 对象的 CommandType 属性设置的是 4,即 Stored Proc!
so...
以下的代码很简单:
代码: <% Option Explicit
Dim s Randomize s = Rnd * 100
Dim conn, cmd Set conn = Server.CreateObject("ADODB.Connection") Set cmd = Server.CreateObject("ADODB.Command")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("sp.mdb")
With cmd .ActiveConnection = conn .CommandType = &H0004 '存储过程 .CommandText = "AddNewData" End With
cmd.Execute , Array(CStr(Now()), CSng(s))
With cmd .ActiveConnection = conn .CommandType = &H0004 '存储过程 .CommandText = "GetData" End With
Dim resultRS, resultArray Set resultRS = cmd.Execute(, Null)
If Not resultRS.EOF Then resultArray = resultRS.GetRows() End If
Set resultRS = Nothing Set cmd = Nothing conn.Close Set conn = Nothing
Response.Write "<ul>" Dim i For i = 0 To UBound(resultArray, 2) Response.Write "<li>" & resultArray(0, i) Response.Write " " & resultArray(1, i) Response.Write " " & resultArray(2, i) Response.Write "</li>" Next Response.Write "</ul>" %>
|
| 共2页: 上一页 [1] 2 下一页 |
评论加载中…