强>
<强> 强>
create procedure sp_name (proc_parameter) (特点……],routine_body 创建存储函数名为sp_name,存储过程的名为:proc_parameter
,,,, 1只
,,,, 2只
,,1.
,,,, 2只
,,,, 3只
,,,, 4只;
,,1.
,,,, 2只
mysql>, delimiter //,,,,,, #,定义sql语句的结束符号为//,使用这条命令时,应该避免(“\”)字符,因为反斜线是Mysql的转意符。 mysql>, create procedure  p1 () →才能开始 →,才能select , *,得到t; →才能最终获得//mysql>, delimiter ; mysql>, show procedure  status \ G ,,,,,,, #,查看存储过程信息 mysql>, call p1 ,,, #,读取这个存储过程
mysql> delimiter //mysql>, create procedure p2 (n int) →才能开始 →,才能select *,得到t where id =, n; →才能最终获得//mysql>, delimiter ; mysql>, show procedure  status \ G mysql>, call p2(1),,,,,,,,, #,需要带入取值
mysql>, create database db_proc; mysql> use db_proc mysql>, CREATE TABLE “proc_test”, ( →,才能“id”,非常小的整数(4),NOT NULL AUTO_INCREMENT, →,才能“用户名”,varchar (20), NOT 空, →,才能‘密码’,varchar (20), NOT 空, →,才能PRIMARY KEY (id) →,才能),引擎=MyISAM AUTO_INCREMENT=50, DEFAULT CHARSET=use utf8; mysql> delimiter //mysql>, create procedure  mytest (name 拷贝;varchar(20),拷贝pwd varchar (20)) →才能开始 →,才能insert into proc_test(用户名、密码),值(名称、pwd); →才能最终获得//mysql>, delimiter ; mysql>, call mytest (& # 39; lxq& # 39; & # 39;密码# 39;),; mysql>, select *,得到proc_test;,,,,,, #,验证插入了数据
mysql> DELIMITER //mysql>, CREATE PROCEDURE  sp_demo_in_parameter (p_in 拷贝;INT) ,,,→开始 ,,,,,SELECT p_in;,,,,, #,查询输入参数 ,,,,,SET p_in=2,,,,,,, #,修改 ,,,,,select p_in;,,,,, #查看修改后的值 ,,,→最终获得//mysql>, DELIMITER ;
mysql>, set @p_in=1; mysql>, call sp_demo_in_parameter (@p_in); mysql>, select @p_in; 以上可以看的出,p_in虽然在存储过程中被修改,但并不影响@p_id的值
mysql> DELIMITER //mysql>, CREATE PROCEDURE  sp_demo_out_parameter (OUT p_out  INT) ,,,→开始 ,,,,,SELECT p_out;,,,, #,查看输出参数 ,,,,,SET p_out=2,,,,,, #,修改参数的值 ,,,,,SELECT p_out;,,,, #,看看有否变化 ,,,→最终获得//mysql>, DELIMITER ;
mysql>, SET @p_out=1; mysql>, CALL sp_demo_out_parameter (@p_out); mysql>, SELECT @p_out; p_out在存储过程中被修改,直接影响@p_out的值
mysql> DELIMITER //mysql>, CREATE PROCEDURE  sp_demo_inout_parameter (INOUT p_inout  INT) ,,,→开始 ,,,,,SELECT p_inout; ,,,,,SET p_inout=2; ,,,,,SELECT p_inout; ,,,,,结束; mysql>, DELIMITER ;
set @p_inout=1; null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullMysql之存储过程和函数