日期:2014-05-16  浏览次数:20723 次

MySQL 使用Navicat8和命令行执行存储过程

首先来看一下执行存储过程的表结构:

number, int

name, varchar(20)

address, varchar(20)

city, varchar(15)

?

1. 使用命令行执行存储过程

?

mysql> delimiter $
mysql> create procedure CustomerInsert (
in inumber int,
in iname varchar(20),
in iaddress varchar(20),
in icity varchar(15)
)
Begin 
         insert into customer values(inumber, iname, iaddress,icity);
		 select * from customer;
End
请注意第一步命令: delimiter $。该命令将把“;”修改为“$”作为结束符,若不修改,接下来的存储过程语句将会报错。

?

?

2. 使用Navicat8执行存储过程

主窗口选择“存储过程”,然后选择“创建存储过程”

如上图所示,在Navicat8中输入存储过程从begin语句开始,并不需要“create procedure”这语句,具体存储过程的名字在点击“保存”按钮时会提示让你输入。同时需要注意一下“参数”那一栏的设置,“in”表示参数只读,“out”表示参数只写,“inout”则表示参数读写。

存储过程输入完成后,点击“运行”后输入参数后点击“确定”:

可以看到新增数据已经插入到Customer表中: