热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

如何创建MySQL存储过程

下文将教您如何创建MySQL存储过程,并附上了详细的步骤,如果您在MySQL存储过程方面遇到过问题,不妨一看,对您会有所帮助。--选择数据库mysqlusetest;Databasechanged--创建示例用表mysqlcreatetablezzm(-idintprimarykeyauto_increment,-na

下文将教您如何创建MySQL存储过程,并附上了详细的步骤,如果您在MySQL存储过程方面遇到过问题,不妨一看,对您会有所帮助。

--选择数据库

mysql> use test;  

Database changed 

--创建示例用表

mysql> create table zzm(  

-> id int primary key auto_increment,  

-> name varchar(10)  

-> );  

Query OK, 0 rows affected (0.20 sec)  

mysql> insert into zzm(name) values('zhang');  

Query OK, 1 row affected (0.08 sec)  

mysql> insert into zzm(name) values('zeng');  

Query OK, 1 row affected (0.05 sec)  

mysql> insert into zzm(name) values('ming');  

Query OK, 1 row affected (0.05 sec)  

mysql> select * from zzm;  

+----+-------+  

| id | name |  

+----+-------+  

| 1 | zhang |  

| 2 | zeng |  

| 3 | ming |  

+----+-------+  

3 rows in set (0.00 sec)  

--更改命令结束符(因为在procedure中经常要用到默认的命令结束符--分号(;)
--所以在创建procedure的时候需要定义新的结束符以说明创建procedure的命令结束)
--这里将结束符号改成美元符号--$
mysql> delimiter $
--创建MySQL存储过程p3
--此存储过程的过程名是p3,该过程包含两个参数,
--一个是输入类型的(以IN标示),参数名是nameid,类型是int,
--一个是输出类型的(以OUT标示),参数名是person_name,类型是varchar(10)
--此存储过程的作用是查询出zzm表的全部内容,会输出结果集(data set),然后
--再查询表中记录的ID是nameid的字段name,将其输出到第二个输出类型的参数里面,这个查询
--不会输出结果集。

mysql> create procedure p3(IN nameid int, OUT person_name varchar(10))  

-> begin  

-> select * from test.zzm;  

-> select zzm.name into person_name from test.zzm where zzm.id = nameid;  

-> end  

-> $  

Query OK, 0 rows affected (0.00 sec)  


推荐阅读
author-avatar
liu
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有