Mysql 存储过程

来源:百度文库 编辑:16楼社区 时间:2020/07/04 07:59:44
存储过程的优点:
存储过程: 存储在数据库服务器端的SQL命令和程序逻辑的集合
存储过程能够允许绝大部分的数据库访问逻辑与程序逻辑分离开来。使用存储过程的其中一个间接的优点是,程序的代码变得更加小巧和容易理解。存储过程的另一优点是,SQL可以被预先编译,由此提高了程序的速度。因为存储过程包含程序逻辑,可以在数据库服务器端更多地执行更多的处理。同样,当执行一个n-tier程序时,存储过程被用于将数据层与服务层分离开来。
安全性也是存储过程的另一优点。当不能直接访问表格时,程序可以将执行优先级别分配给存储过程。不幸的是,在这时候,MySQL不支持“授予执行(GRANT EXECUTE)”。这就意味着除非程序具有访问表格的权限,否则调用访问相同表格的一个存储过程也是不行的。使用这一特性有点像在做一个很有趣的赌博。
表A
声明
描述
CREATE PROCEDURE
建立一个存放在MySQL数据库的表格的存储过程。
CREATE FUNCTION
建立一个用户自定义的函数,尤其是返回数据的存储过程。
ALTER PROCEDURE
更改用CREATE PROCEDURE 建立的预先指定的存储过程,其不会影响相关存储过程或存储功能。.
ALTER FUNCTION
更改用CREATE FUNCTION 建立的预先指定的存储过程,其不会影响相关存储过程或存储功能。.
DROP PROCEDURE
从MySQL的表格中删除一个或多个存储过程。
DROP FUNCTION
从MySQL的表格中删除一个或多个存储函数。
SHOW CREATE PROCEDURE
返回使用CREATE PROCEDURE 建立的预先指定的存储过程的文本。这一声明是SQL:2003规范的一个MySQL扩展。
SHOW CREATE FUNCTION
返回使用CREATE  FUNCTION建立的预先指定的存储过程的文本。这一声明是SQL:2003规范的一个MySQL扩展。
SHOW PROCEDURE STATUS
返回一个预先指定的存储过程的特性,包括名称、类型、建立者、建立日期、以及更改日期。这一声明是SQL:2003规范的一个MySQL扩展。
SHOW FUNCTION STATUS
返回一个预先指定的存储函数的特性,包括名称、类型、建立者、建立日期、以及更改日期。这一声明是SQL:2003规范的一个MySQL扩展。
CALL
调用一个使用CREATE PROCEDURE建立的预先指定的存储过程。
BEGIN ... END
包含一组执行的多声明。
DECLARE
用于指定当地变量、环境、处理器,以及指针。
SET
用于更改当地和全局服务器变量的值。
SELECT ... INTO
用于存储显示变量的纵列。
OPEN
用于打开一个指针。
FETCH
使用特定指针来获得下一列。
CLOSE
用于关闭和打开指针。
IF
一个An if-then-else-end if 声明。
CASE ... WHEN
一个 case声明的结构
LOOP
一个简单的循环结构;可以使用LEAVE 语句来退出。
LEAVE
用于退出IF,CASE,LOOP,REPEAT以及WHILE 语句。
ITERATE
用于重新开始循环。
REPEAT
在结束时测试的循环。
WHILE
在开始时测试的循环。
RETURNS
返回一个存储过程的值。
MySQL 5.0支持存储过程语句。
php调用mysql存储过程和函数的方法 http://dev.csdn.net/develop/article/69/69467.shtm
http://www.knowsky.com/300482.html
http://www.kingmx.com/article/15234
http://www.linuxmine.com/3449.html
php调用存储过程返回结果集 http://www.kingmx.com/article/15210
mysql存储过程学习总结-操作符 http://dev.csdn.net/author/hbcui1984/c87ea0e6c3c2449e8c588c30ac43b0f6.html
mysql 5.0存储过程学习总结 http://dev.csdn.net/author/hbcui1984/f15b1de4f94a486bac645c995b0d6ebf.html
mysql存储过程基本函数 http://dev.csdn.net/author/hbcui1984/34d8b6f3592649ad85ad0956fd945ab3.html
MYSQL出错代码列表 http://dev.csdn.net/author/hbcui1984/9ba0a6dc787e456d98bd5e510cee0951.html
Mysql5.0 存储过程 http://dev.csdn.net/develop/article/84/84616.shtm
PHP调用MySQL存储过程 http://www.kingmx.com/article.php?id=15237
MySQL5存储过程编写实践  http://www.linuxdby.com/html/database/mysql/20070423/10460.html
高手心得:提高MySQL性能的方法  http://www.linuxdby.com/html/database/mysql/20070423/10432.html
MySQL中你需要注意的几个SQL语句  http://www.linuxdby.com/html/database/mysql/20070423/10510.html
通过分区(Partition)提升MySQL性能http://dev.csdn.net/develop/article/84/84508.shtm