当前位置:站长之家学习教程网站编程ASP编程学习教程 → 文章内容

在ASP中使用ACCESS的“存储过程”技术

减小字体 增大字体 作者:佚名  来源:不详  发布时间:2005-12-5 14:21:31
ACCESS中的“存储过程”(其实应该不是严格意义上的存储过程)
    其实在ACCESS中也可以使用存储过程的,这样的话大家就不必再
为不能够使用ACCESS自带的一些SQL语句而发愁了,因为使用ADO
的命令对象,你可以很方便的使用ACCESS自己的SQL语法,这样能够
很大的提高使用ACCESS数据库的网站的性能。
    在ASP中可以调用ACCESS中的“存储过程”,它的执行效率要优于简单的
查询语句。其实我个人认为这并不是严格意义上的存储过程的,就是有别与
SQL Server,Oracle等数据库中的存储过程的。
   首先介绍在ACCESS中怎么建立一个“存储过程”
打开你的数据库,选择新建一个查询,关闭“显示表”对话框而不指定表或查询。
然后切换到 SQL 视图,现在使用以下格式就能够建立一个查询了。(就是一个简单
的“存储过程”了,呵呵)至少现在大家可以使用许多ACCESS才带有的专门功能了,
例如ACCESS的子表功能,很好使的说。
   一般查询语法如下:
PARAMETERS [inid] Text; SELECT * from 。。。。。
   语法很简单,可以直接看ACCESS自带的帮助文件(查关键字PARAMETERS)。

   下面介绍怎么在ASP中调用ACCESS的“存储过程”
<%@  Language=VBScript %>
<%
    Dim cnn1
    Dim cmdNyttSvarID
    Dim prmNyttSvarID
    Dim rstNyttSvarID
    Dim strID
    Dim strCnn
    Dim strSize
    Dim i
    Dim tmpFields
    Dim strName
    Dim strTable
    
    Set cnn1 = Server.CreateObject ("ADODB.Connection")
    strCnn = "DSN=agenda21"
    cnn1.Open strCnn
    cnn1.CursorLocation = adUseClient
    
    Set cmdNyttSvarID = Server.CreateObject ("ADODB.Command")
    '你的查询名
        cmdNyttSvarID.CommandText = "nyttsvarid"
    cmdNyttSvarID.CommandType = adCmdStoredProc
    
        '给初始参数值
    strID = "00001"
    strSize = Len(strID)
    
    '参数名
    strName = "inid"
    
        '建立命令对象所需参数
    Set prmNyttSvarID = cmdNyttSvarID.CreateParameter(strName, adVarChar, adParamInput,strSize,strID)
    cmdNyttSvarID.Parameters.Append prmNyttSvarID
    prmNyttSvarID.Value = strID
    
    Set cmdNyttSvarID.ActiveConnection = cnn1
    Set rstNyttSvarID = cmdNyttSvarID.Execute
    i = 1
    
    
    Do While Not rstNyttSvarID.EOF
        Response.Write ("<BR>")
        
        For Each tmpField In rstNyttSvarID.Fields
            Response.Write (tmpField.Name & ":" & tmpField.Value & ",")
        Next
        
        rstNyttSvarID.MoveNext
    Loop
    
    rstNyttSvarID.Close
    cnn1.Close
%>