This Domain(Admin5.com) is for Sale:

用数据库存储过程实现ASP对数据库访问

时间:2007-12-23  来源:不详  作者:迈克DB
asp中上述输入参数的使用也可不用参数属性来实现直接用VB中的&来形成命令文本中对应的数据即可‘参数的使用在输出时是非凡有用的Set oRs = oCmd.Execute ors1.activeconnection=oconn ‘该命令对象中也可应用一般的SQL语句使用Source和open属性,其中source指出数据源ors1.source ="select * from [tmptable] where 年份=2000 and 月份=1"ors1.cursortype=adopenstatic ors1.open>四、在SQL中的存储过程简介利用SQL的语言可以编写对于数据库访问的存储过程,其语法如下:CREATE PROC[EDURE] procedure_name [;number][{@parameter data_type} [VARYING] [= default] [OUTPUT]][,...n][WITH {RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}][FOR REPLICATION]ASsql_statement [...n][ ]内的内容是可选项,而()内的内容是必选项,例: 若用户想建立一个删除表tmp中的记录的存储过程Select_delete可写为:Create Proc select_del As Delete tmp 例:用户想查询tmp表中某年的数据的存储过程create proc select_query @year int asselect * from tmp where year=@year在这里@year是存储过程的参数例:该存储过程是从某结点n开始找到最上层的父亲结点,这种经常用到的过程可以由存储过程来担当,在网页中重复使用达到共享。空:表示该结点为顶层结点fjdid(父结点编号) 结点n 非空:表示该结点的父亲结点号dwmc(单位名称)CREATE proc search_dwmc @dwidold int,@dwmcresult varchar(100) outputas declare @stop intdeclare @result varchar(80)declare @dwmc varchar(80)declare @dwid intset nocount onset @stop=1set @dwmc=""select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold set @result=rtrim(@dwmc)if @dwid=0 set @stop=0while (@stop=1) and (@dwid<>0)beginset @dwidold=@dwidselect @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidoldif @@rowcount=0 set @dwmc=""elseset @result=@dwmc @resultif (@dwid=0) or (@@rowcount=0) set @stop=0elsecontinueendset @dwmcresult=rtrim(@result)充分合理地利用存储过程,可以提高服务器吞吐能力,笔者利用存储过程来从近20个表中获取数据组合成一个通用的表,产生近2万条记录,而所需时间约7秒钟,假如这种操作借助于较合理的动态网页可以将服务器开发提高到一个高度,充分利用存储过程,可以减轻网页设计带来的繁重处理,而使所编写的代码得到共享和合理的利用,并将代码藏于服务器的数据库内部,使得一些技术得到的保密,这也是存储过程的一大特色,希望读者能从中得到启益。    asp">存储过程asp?tags=数据库">数据库

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息