1)写一个存储过程
使用的工具的不同,写法也是不同
mysql 存储过程
navicat premium
写法如下
默认生成的指定当前用户,保存就会报格式错误
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608082500781.png)
这个是默认生成的,保存会报错
需要改成下面的格式的,指定用户为root
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608082514596.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTcwNTM5Ng==,size_16,color_FFFFFF,t_70)
之后保存或者运行就可以了
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608082554494.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTcwNTM5Ng==,size_16,color_FFFFFF,t_70)
运行的结果如下
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608082633218.png)
2)调用存储过程
注解方式调用
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608082906277.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTcwNTM5Ng==,size_16,color_FFFFFF,t_70)
xml方式调用
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608082920470.png)
3)解析
调用存储过程的关键字是 call
1)还需要指明 statementType
2)这里用的是CALLABLE
3)指明参数的模式 IN OUT 还是 INOUT
4)注明 javaType
然后使用上面没有什么不同
使用还是和普通的sql一样使用