MySQL 存储程序

198 阅读1分钟
$relation = [
    '存储程序' => [
        '存储例程' => [
            '存储函数',
            '存储过程',
        ],
        '触发器',
        '事件',
    ],
];

存储函数与存储过程区别

  • 存储函数要写 return
  • 存储函数只支持 in, 存储过程支持 in, out, inout
    • in 用于调用者向存储过程传递数据, 如果 in 参数在过程中被修改, 调用者不可见
    • out 必须是变量, 用于把存储过程运行过程中产生的数据赋值给 out 参数, 存储过程执行结束后, 调用者可以访问到 out 参数
    • inout 必须是变量, 综合 in 和 out 的特点, 既可以用于调用者向存储过程传递数据, 也可以用于存放存储过程中产生的数据以供调用者使用
  • 存储函数只能返回一个值
  • 存储过程执行中的结果会显示出来
  • 调用方式: 存储函数 select, 存储过程 call