zoukankan      html  css  js  c++  java
  • 学会在ASP中使用存储过程

    引用地址:http://goaler.xicp.net/ShowLog.asp?ID=503

    学习使用存储过程(Stored Procedure),是ASP程序员的必须课之一。所有的大型数据库都支持存储过程,比如Oracle、MS SQL等,(但MS Access不支持,不过,在Access里可以使用参数化的查询)。
    使用存储过程有许多好处,它可以封装复杂的数据逻辑,充分发挥大型数据库本身的优势。我们知道,ASP并不适合做复杂的数据运算,而通过OLD DB访问数据库,由于数据需要在ASP和数据库之间传递,相当消耗系统资源。事实上,如果数据库仅仅起着数据存储的作用,那么它的功能是远远没有得到利用的。
    关于如何创建存储过程,请参考MS SQL的相关文档。
    本文介绍存储过程如何在ASP中运用。
    简单的一个SQL语句:
    select ID,Name,Picture,Time,Duty from employ 
    我们可以创建一个存储过程:
    CREATE PROCEDURE sp_employ
    AS
    select ID,Name,Picture,Time,Duty from employ 
    Go
     

    而SQL语句:
    select ID,Name,Picture,Time,Duty from employ where ID=10230
    对应的存储过程是:(用Alter替换我们已有的存储过程)
    ALTER PROCEDURE sp_employ
    @inID  int
    AS
    select ID,Name,Picture,Time,Duty from employ  where ID=@inID
    Go
     


    下面对比一下SQL和存储过程在ASP中的情况。首先看看直接执行SQL的情况:
    <%
    dim Conn, strSQL, rs
    set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open  "DSN=webData;uid=user;pwd=password" 
    strSQL = " select ID,Name,Picture,Time,Duty from employ "
    Set rs = Conn.Execute(strSQL) 
    %> 


    再看看如何执行Stored Procedure:
    <%
    dim Conn, strSQL, rs
    set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open  "DSN=webData;uid=user;pwd=password" ’make connection
    strSQL = "sp_employ"
    Set rs = Conn.Execute(strSQL) 
    %> 


    而执行带参数的Stored Procedure也是相当类似的:
    <%
    dim Conn, strSQL, rs, myInt
    myInt = 1 
    set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open  "DSN=webData;uid=user;pwd=password"
    strSQL = "sp_myStoredProcedure " & myInt
    Set rs = Conn.Execute(strSQL) 
    %> 


  • 相关阅读:
    2011.9.27到某公司的Android面试(C/java/Android)题目总结
    Android点滴(9) Android 不显示标题栏和全屏的设置方法
    android点滴(11) Android常用命令
    android点滴(7) Linux Proc虚拟文件系统—Android CPU、内存、网络流量获取
    [CSharp]静态构造函数
    机械式和液压式轮胎定型硫化机的性能特点和选用
    Python操作MySQL的一个报错:IndexError: out of range
    C#代理类型学习记录(拷贝的代码哈哈)
    轮胎硫化机
    CP48″液压式轮胎定型硫化机
  • 原文地址:https://www.cnblogs.com/AloneSword/p/2237697.html
Copyright © 2011-2022 走看看