首先来看一下执行存储过程的表结构:
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表中: