快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

ASP调试存储过程

asp开发bs架构的三层系统,对于中小结构的系统把业务逻辑放在sqlserver的存储过程里面是一个很好的实现方式,但这么做出现了一个asp客户端和数据库存储过程之间配合调试的不方便.

实际开发中我写了下面一个函数,自动把asp端传给数据库的参数取出,自动生成符合sqlserver查询分析器的规则的存储过程执行命令串,放在textarea控件里,可以从页面直接复制到查询分析器里进行存储过程调试,下面就是程序.
\\\'==================================================================
dim dsn \\\'数据源
dim storename \\\'存储过程名
dim con \\\'Connection对象
dim cmd \\\'Command对象
dim rs \\\'Recordset 对象
set con=server.createobject("ADODB.Connection")
con.open dsn
set cmd=server.createobject("ADODB.Command")
set cmd.ActiveConnection=Con
cmd.CommandText= storename
cmd.Commandtype=adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("@State",adInteger,adParamInput,4)
cmd.Parameters.Append cmd.CreateParameter("@WhereT",adVarChar,adParamInput,200)
cmd.Parameters.Append cmd.CreateParameter("@BranchType",adVarChar,adParamInput,50)
cmd("@State") = 1
cmd("@WhereT")="2"
cmd("@BranchType")="3"
getpmt(cmd) ‘获取存储过程的参数
set rs=server.CreateObject("adodb.recordset")
rs.CursorType =3
rs.LockType =3
rs.CursorLocation =3
set rs.Source =cmd
rs.Open
\\\'======================================================
\\\' 形成存储过程的函数
\\\'=======================
\\\' 输入参数 a= command对象
\\\'=======================
sub getpmt(a)
b=a.CommandText
b=replace(b,"?","")
b=replace(b,",","")
b=replace(b,"}","")
b=replace(b,"{","")
b=replace(b," ","")
b=replace(b,"call","")
b=replace(b,"(","")
b=replace(b,")","")
Response.Write "<center><table border=1 cellpadding =0 cellspacing =0 bordercolordark=#ffffff bordercolorlight=#cccc88><tr onclick="&b&".style.display=\\\'\\\'><td bgcolor=#cccc88>" & b & "</td></tr><tr id="&b&" style=display:none><td>"
Response.Write "<TEXTAREA rows=6 cols=70 style=\\\'font-color:#ccc888;bgcolor:#ffffc\\\'>"
Response.Write b
for each element in a.parameters
c=element
c="\\\'" & replace(c,"\\\'","\\\'\\\'") & "\\\'"
d=d & vbcrlf & element.name &"="& c &","
next
d=left(d,len(d)-1)
Response.Write d
Response.Write "</TEXTAREA></td></tr></table></center>"
end sub
返回类别: 教程
上一教程: 维护ASP的会话状态
下一教程: 用ASP将数据转为XML文件下载

您可以阅读与"ASP调试存储过程"相关的教程:
· ASP+SQL SERVER 分页方式(不用存储过程)
· ASP调用ORACLE存储过程
· 利用SQL SERVER存储过程实现ASP用户身份验证
· ASP中存储过程调用的两种方法及比较
· ASP与存储过程
    微笑服务 优质保证 索取样品