SQL存储过程的概念,创建,调用

存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。总的来说,存储过程具有以下一些优点:

存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。总的来说,存储过程具有以下一些优点:

◆存储过程允许标准组件式编程

◆存储过程能够实现较快的执行速度

◆存储过程能够减少网络流量

◆存储过程可被作为一种安全机制来充分利用

基本语法如下:
完整的语法规则如下:

CREATE PROC [ EDURE ] procedure_name [ ; number ]
[ { @parameter data_type }
[ VARYING ] [ = default ] [ OUTPUT ]
] [ ,…n ]
[ WITH
{ RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]
[ FOR REPLICATION ]
AS sql_statement [ …n ]

现举例其实际中的应用:

———————————————————

CREATE PROCEDURE [news_cmtcount]

@news_id int=null

AS

select count(*) from comment where news_id=@news_id

return

GO

———————————————————–

上面一段为存储过程,用来显示计算新闻ID号为news_id的所有评论的条数。

将存储过程的权限设为可执行。

##########################################

‘news_id为得到的新闻ID

set rrcomment=conn.execute(“exec news_cmtcount “&news_id )

sTotalCountcomment=rrcomment(0)

rrcomment.close()

set rrcomment=nothing

##########################################