时间:2021-05-10 08:48:29 | 栏目:Mysql | 点击:次
什么是存储过程:
存储过程可以说是一个记录集吧,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。
存储过程的好处:
1.由于数据库执行动作时,是先编译后执行的。然而存储过程是一个编译过的代码块,所以执行效率要比T-SQL语句高。
2.一个存储过程在程序在网络中交互时可以替代大堆的T-SQL语句,所以也能降低网络的通信量,提高通信速率。
3.通过存储过程能够使没有权限的用户在控制之下间接地存取数据库,从而确保数据的安全。
小结:总之存储过程是好东西,在做项目时属于必备利器,下面介绍存储过程的基本语法。
1.存储过程语法
CREATE PROCEDURE proc_name([IN|OUT|INOUT] param 数据类型) BEGIN statement END
在mysql命令行下,每一个statement必须要用;(分号)隔开,分号是mysql的执行点,为了写存储过程用delimiter // 命令将分隔符转换为//。
delimiter //
2.写一个简单的procedure
mysql-> CREATE PROCEDURE hello() -> BEGIN -> SELECT "Hello World!"; -> END -> // Query OK, 0 rows affected (0.00 sec)
1.调用存储过程: call proc_name
mysql-> CALL hello()// +----------------------+ | it is a hello world. | +----------------------+ | it is a hello world. | +----------------------+ 1 row in set (0.00 sec)
2.删除存储过程
DROP proc_name
注意:在一个存储过程中可以调用另一个存储过程,但不能删除。