说明:其实由于你已经使用了【create or repalace procedure】即使有存储过程叫【ACCESS_PROD_INST】也会被覆盖掉你用下面的命令查询一下,有什么对象叫【ACCESS_PROD_INST】删掉它或者换一个存储过程名字。
可以通过SQL的CALL语句来完成对存储过程的调用
在存储过程中可以包含业务逻辑
存储过程可以在本地或远程进行调用
存储过程可以接收或传递参数生成结果集
包含使用sql语句的過程构造
存储在数据库中且在db2 服务器上运行;
可以由正在使用的sql的应用程序根据名称来调用;
允许应用程序分2部分允许,在客户机上运行應用程序在服务器上运行存储过程
存储过程在应用程序中的优势
减少了客户机与服务器直接的网络使用率
减少了开发成本并且提高了可靠性
集中处理了公共例程的安全性、管理和维护
通过sql pl 当前的语句集合和语言特性,可以用sql开发综合的、高级的程序
例如函数、存储过程和觸发器这样便可以将业务逻辑封装到易于维护的数据库对象中,从而提高数据库应用程序的性能
SQL PL 支持本地和全局变量,包括声明和赋徝还支持条件语句和迭代语句、控制语句的转移、错误管理语句以及返回结果集的方法。
使用存储过程的合適时机:
应用程序的性能无法满足预期时
客户端数量较多且应用程序中SQL代码分散时
应用程序需要进行繁重的数据库操作同时这些操作并不需要进行太多的客户交互
需要对客户应用代码进行访问控制时
客户应用需要在一次操作中执行多条 SQL 语句
详细请看屌丝大哥 db2数据类型介绍的那一课
只是将实参传递给存储过程,但在存储过程中不能对其进行修改换句话说,对于存储过程而言它是只读的
在存储过程结束时向调用者返回。一般在过程中都会被赋值
INOUT(输入输出参数)
上述两种参数类型的结合体。它可以帮助调用者将实参傳递给进程另外它也能够作为输出参数被修改和赋值。
复合语句是指包含在BEGIN和END间的语句它一般包括如下语句类型:
1. 复合语句可以嵌套使用。
2. BEGIN语句可以和标签组合使用这样可以更清晰的标识语句块的范围。
例如:给屌丝姓名变量赋值
下面的代码是模块的实现部分:
保留规格说明内容,删除实现
删除模块中的存储过程(SP)
将模块的执行权限赋给joe
稍加变形的CASE语句
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。