in 为向函数传送进去的值

out 为函数向外返回的值

intout 传送进去的值, 并且还返回这个值

    create procedure q1(in number int,out name varchar(100))
begin
if number > 1 then
select 'true';
else
select 'false';
end if;
end$

调用时:

call q1(1, @value);

注意, 第二个参数要为变量定义的型式。

这个函数并没有向外发送改变后的name值, 所以调用后 select @value 为null。

再看看out:

mysql>     create procedure qq(number int,inout name varchar(100))
-> begin
-> if number > 1 then
-> select 'true';
-> else
-> select 'false';
-> end if;
-> set name=user();
-> end$
Query OK, 0 rows affected (0.00 sec) mysql> call qq(1,@as)$
+-------+
| false |
+-------+
| false |
+-------+
1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec) mysql> select @as$
+----------------+
| @as |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec) mysql>

inout例子:

mysql> create procedure qqq(inout name varchar(100))
-> begin
-> set name=database();
-> end$
Query OK, 0 rows affected (0.00 sec) mysql> call qqq(1)$
ERROR 1414 (42000): OUT or INOUT argument 1 for routine test.qqq is not a variable or NEW pseudo-var
iable in BEFORE trigger
mysql> call qqq(@abc)$
Query OK, 0 rows affected (0.00 sec) mysql> select @abc$
+------+
| @abc |
+------+
| test |
+------+
1 row in set (0.00 sec) mysql>

注意参数型式, 因为他要发送回来, 这个inout的参数型式要跟out类似, 也就是要变量定义型式: @变量名。

最新文章

  1. Docker容器环境下ASP.NET Core Web API应用程序的调试
  2. YbSoftwareFactory 代码生成插件【二十五】:Razor视图中以全局方式调用后台方法输出页面代码的三种方法
  3. percona server 二进制安装下编译tpcc-mysql的坑
  4. robotframework接口测试初探3
  5. JS-concat
  6. oracle迁移mysql数据库注意
  7. linux shell中,单引号、 双引号,反引号(``),$()的区别
  8. DesignPatterns
  9. c3p0使用记录
  10. php 变量原理讲解
  11. 【kmp】 剪花布条 HDU - 2087
  12. MySQL优化(2)--------常用优化
  13. select默认选中
  14. json初接触
  15. 面试真题--------spring源码解析AOP
  16. elastic5.4安装错误解决
  17. Python代码小片段
  18. 大厂面试官:Java工程师的“十项全能”
  19. NoSQL数据存储
  20. vs附加调试 w3p进程没有名称

热门文章

  1. 网络流量统计using ADB
  2. 第104天:web字体图标使用方法
  3. 【Python】Python流程控制
  4. el表达式作用域查找顺序 注意:当属性名字相同时候 先找到是小的作用域 因为是从小到大开始找的
  5. 最小生成树-Borůvka算法
  6. bzoj2699 更新
  7. 降雨量 HYSBZ - 1067(RMQ)
  8. CF623D birthday 贪心 概率期望
  9. 函数式编程(1)-高阶变成(1)-map/reduce
  10. Java考试题之三