Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103782757
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Sybase

2008-04-11 12:56:40

     来源:赛迪网    作者:yashi

问:Sybase存储过程应当怎样建立和使用?

答:首先我来向你介绍一下存储过程的特点:Sybase存储过程是集中存储在SQL Server中的预先定义且已经编译好的事务。存储过程由SQL语句和流程控制语句组成。它的功能主要包括:接受参数;调用另一过程;返回一个状态值给调用过程或批处理,指示调用成功或失败;返回若干个参数值给调用过程或批处理,为调用者提供动态结果;在远程SQL Server中运行等。

存储过程的性能特点:

◆存储过程是预编译过的,这就意味着它与普通的SQL语句或批处理的SQL语句不同,当首次运行一个存储过程时,SQL Server的查询处理器对其进行分析,在排除了语法错误之后形成存储在系统中的可执行方案。由于查询处理的大部分工作已经完成,所以存储过程执行速度很快。

◆存储过程和待处理的数据都放在同一台运行SQL Server的计算机上,使用存储过程查询当地的数据,效率自然很高。

◆存储过程一般多由Client端通过存储过程的名字进行调用,即跨网传送的只是存储过程的名字及少量的参数(如果有的话),而不是构成存储过程的许多SQL语句,因此可以减少网络传输量,加快系统响应速度。

◆存储过程还有着如同C语言子函数那样的被调用和返回值的方便特性。

所以,存储过程大大增强了SQL语言的功能、效率和灵活性。掌握和应用好存储过程,对进一步发挥Sybase数据库系统的强大功能有着重要的意义。

存储过程的语法规则

建立存储过程的语法规则为:

CREATE PROCedure[owner.]procedurename[;number] 
[[(]@parameter_name datatype[=default][OUTput] 
[,@parameter_name datatype[=default][OUTput]]...[)]] 
[WITH RECOMPILE] 
AS SQL_statements

使用存储过程的语法规则:

[EXECute][@return-status=] 
[[[server.]database.]owner.]procedurename[;number] 
[[@parameter_name=]value|[@parameter_name=]@varialbe[OUTput] 
[,[@parameter_name=]value|[@parameter_name=]@variable[OUTput]...]] 
[WITH RECOMPILE]

[page]下面简要介绍这两个命令的常用选项以及建立和使用存储过程的要点。

·[[[server.]database.]owner.]procedure_name:存储过程的名字。

·@parameter_name datatype[=default][OUTput]:形式参数(形参)的名称、类型。df ault是赋予的缺省值(可选),OUTput指定本参数为输出参数(可选)。形参是存储过程中的自变量,可以有多个,名字必须以@打头,最长30个字符。

阅读(434) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~