知识大全 ASP存储过程的使用方法

Posted

篇首语:博观而约取,厚积而薄发。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP存储过程的使用方法相关的知识,希望对你有一定的参考价值。

ASP存储过程的使用方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

   一 使用Command对象和Parameter对象传递参数    本讲将主要使用Microsoft SQL Server 数据库 先建立一个连接文件AdoSQL asp备用 以后用到时不再特别说明     <% AdoSQL asp    Option Explicit    Response Expires =      第一部分: 建立连接    Dim Cnn StrCnn    Set Cnn = Server CreateObject( ADODB Connection )    StrCnn = Provider=sqloledb; User ID=sa; Password=; Initial Catalog=pubs; Data Source=ICBCZJP     Cnn Open StrCnn    %>    注意 自己使用时要将Data Source设为你的数据库服务器所在的机器名     另外 以前使用Access数据库时 用Microsoft Access 可以很方便的查看字段及数据 而使用SQL Server数据库 尤其是并不在数据库服务器 而是在另一台机器上调试ASP脚本时 要查看字段及数据便需另外安装工具 这里向你提供一个工具 Msqry exe(Microsoft Query) 这个文件随Office 安装 一般位于目录 Microsoft Office\\Office 下     例wuf asp     <%@ LANGUAGE= VBSCRIPT %>    <! #include file= AdoSQL asp >    <! #include file= adovbs inc >    <% wuf asp    Dim cmdTest prmTest rsTest     创建 Command 对象    Set cmdTest = Server CreateObject( ADODB Command )     Recordset Command对象都可以通过ActiveConnection属性来连接Connection对象    cmdTest ActiveConnection = Cnn     SQL命令 含两个参数 用 ? 表示    cmdTest CommandText = Update jobs Set job_desc = ? Where job_id = ?      设命令类型为 SQL 语句    cmdTest CommandType = adCmdText     Prepared 属性决定是否将 SQL 命令先行编译 将其设为True 可以加快运行    cmdTest Prepared = True         创建 Parameter 对象    Set prmTest=cmdTest CreateParameter( job_desc adVarChar adParamInput 网络 )     将数据追加到 Parameters 数据集合中    cmdTest Parameters Append prmTest    Set prmTest = cmdTest CreateParameter( job_id adSmallInt adParamInput )    cmdTest Parameters Append prmTest     执行修改 – 不需要返回结果 简单的使用cmdTest Execute 就可以了    cmdTest Execute     重新设置参数运行 – 便可修改另一条数据    cmdTest Parameters( job_id ) =     cmdTest Parameters( job_desc ) = 测试     cmdTest Execute     重新设置参数运行    cmdTest( job_id ) =     cmdTest( job_desc ) = 金融     cmdTest Execute    Set rsTest = Cnn Execute( Select job_id job_desc From jobs )    While Not rsTest EOF    Response Write rsTest( ) & rsTest( ) & &ltbr>     rsTest MoveNext    Wend    Cnn close : Set prmTest = Nothing    Set cmdTest = Nothing: Set Cnn = Nothing    %>    分析      .Command对象的CreateParameter方法用来为SQL命令或存储过程建立参数对象 共有五个参数(五个参数都是可选项)     第一个参数 参数对象的名称     第二个参数 参数对象的数据类型 种类太多 还是参考ADO帮助吧 这里adVarChar(字符串值) adSmallInt( 字节带符号整型)     第三个参数 参数类型 可以是 adParamInput(指示输入参数) adParamOutput( 指示为输出参数) adParamReturnValue(指示为返回值) adParamUnknown(指示参数类型无法确定) adParamInputOutput(指示为输入/输出参数)     第四个参数 参数的数据长度 最好指定为与数据库中对应字段长度相等 以免使用时出错 尤其数据类型为VarChar时 如果是整型或日期型则不必提供该值     第五个参数 参数的设置初值      .cmdTest Parameters Append方法增加一个Parameter对象到Parameters数据集合中 从本例中也可看到如何使用多个参数      .从本例可以看到 只需要重新设定输入参数 便可执行对其他数据的修改 非常方便 这一思路在编程时也是最常用的方法之一      .重设参数 既可以使用cmdTest Parameters 也可以省略为cmdTest( job_id )      二 在ASP中使用存储过程    什么是存储过程(存储过程位于数据库服务器中 是一个SQL语句的集合 可包含一个或多个SQL语句) 怎样创建存储过程不属于本讲座的内容 本讲座主要是举例说明在ASP中如何调用存储过程     使用存储过程的好处是大大的 存储过程比在ASP脚本中运行SQL命令效率更高 可以提高整体性能并减轻网络负载(减少了在网络服务器和数据服务器之间的交互) 可以优化ASP代码和增强代码灵活性等等     (一)在存储过程中使用输入参数    本例中使用的存储过程为SQL Server 自带的 byroyalty 里面的一条SQL语句非常简单 无非是多了一个CREATE PROCEDURE byroyalty 并且有一个输入参数为@percentage     CREATE PROCEDURE byroyalty @percentage int    AS    select au_id from titleauthor    where titleauthor royaltyper = @percentage    serve by     例wuf asp    <% @LANGUAGE = VBScript %>    <! #include file= AdoSQL asp >    <! #include file= adovbs inc >    <% wuf asp    Dim cmdTest prmTest rsTest    Set cmdTest = Server CreateObject( ADODB Command )    cmdTest CommandText = byroyalty       存储过程名     设命令类型为 存储过程    cmdTest CommandType = adCmdStoredProc     创建 Parameter 对象    Set prmTest = Server CreateObject( ADODB Parameter )     Type属性对应wuf asp中的第二个参数    prmTest Type = adInteger     字节的带符号整型     Direction属性对应wuf asp中的第三个参数    prmTest Direction = adParamInput     Value属性对应wuf asp中的第五个参数    prmTest Value =     cmdTest Parameters Append prmTest    Set cmdTest ActiveConnection = Cnn     需要返回一个记录集 故使用Set rsTest = cmdTest Execute    Set rsTest = cmdTest Execute    While Not rsTest EOF    Response Write rsTest( ) & &ltbr>     rsTest MoveNext    Wend    Cnn close    Set rsTest = Nothing : Set prmTest = Nothing    Set cmdTest = Nothing: Set Cnn = Nothing    %>    CommandText属性既可以指定SQL命令 也可以指定为存储过程或者是表名称     在本例中 创建Parameter对象与wuf asp略有不同 其实仔细看看 意思也是差不多的 本例还有两个属性未用 prmTest Name prmTest Size 加上Type Direction和Value 对应于wuf asp中的五个参数     (二)使用输出参数    从数据库表中取得一个记录或计算一个值时 需要使用返回输出参数的存储过程 为了举例 先在SQL Server的pubs库中新建一存储过程OUTemploy 该存储过程需要输入两个日期 然后输出一个最大值     CREATE PROCEDURE OUTemploy    (    @job_lvl tinyint OUTPUT     @hire_date datetime     @hire_date datetime    )    AS    select @job_lvl = MAX(job_lvl) from employee    where hire_date >= @hire_date and hire_date <= @hire_date     有多种方法可以建立存储过程      .使用Microsoft SQL Server的Enterprise Manager 打开后在左边的树目录中依次打开 Console Root – Microsoft SQL Servers – SQL Server Group – ICBCZJP(Windows NT) – databases – pubs – stored procedure – New stored procedure 输入存储过程后 还可对其进行语法检测      .使用Microsoft SQL Server的Query Analyzer 先连接数据库服务器并选择pubs数据库 输入上面的存储过程并点击Execute Query(或按F )      .使用VB 打开菜单 视图 / 数据视图窗口 后 右键单击 数据链接 / 新建数据链接      .使用ASP脚本创建存储过程 例wuf asp     <% @LANGUAGE = VBScript %>    <! #include file= AdoSQL asp >   cha138/Article/program/net/201311/11987

相关参考

知识大全 ASP调用带参数存储过程

ASP调用带参数存储过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  这也是最简单的方法两个输

知识大全 ASP.NET调用存储过程方法

ASP.NET调用存储过程方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  根据返回值类型的不

知识大全 在asp.net中使用存储过程

  存储过程的定义  CREATEprocedurepro_buyGoods  (  @GoodsNamevarchar()  @GoodsNumint  )  AS  declare@countas

知识大全 ASP.NET中如何调用存储过程

ASP.NET中如何调用存储过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  用ASPNET与

知识大全 ASP.NET利用存储过程实现分页

ASP.NET利用存储过程实现分页  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  首先说下思路写

知识大全 用ASP调用SQL的视图和存储过程

用ASP调用SQL的视图和存储过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一前言    

知识大全 对比JSP和ASP.NET的存储过程

对比JSP和ASP.NET的存储过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    在Jav

知识大全 ASP.NET中利用存储过程实现模糊查询

ASP.NET中利用存储过程实现模糊查询  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一建立存

知识大全 在ASP.NET中调用存储过程方法新解

在ASP.NET中调用存储过程方法新解  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在使用NET的