SHOW CREATE PROCEDURE
过程存进库里之后,当初那段代码原样留着。

过程存进库里之后,当初那段代码原样留着。

十一列,看的是名字、库、定义者、建的时间。

加 LIKE 能筛,pattern 里 % 和 _ 两个通配符照旧能用。
这张表很宽,屏幕窄的时候按一下右上角的「上下」就整屏放得下。
MySQL 没有改过程体的语句。

要换代码,就是 DROP 掉再 CREATE 一遍,没有第三条路。
文件柜里那份手册改了一句话,也得整本重印再放回去。
那实际工作里怎么管过程的版本?
安全类型、注释、访问数据的方式。

| 改什么 | 行不行 |
|---|---|
| 特征信息 | 行 |
| 过程体 | 不行 |
| 参数表 | 不行 |
特征信息的写法跟 CREATE 里那一串完全一样。
改完再 SHOW PROCEDURE STATUS 一次,Security_type 那一列就变了。
删一个不存在的会报 1305。

Review SQL 那一步就是让你确认。

工具的每一次点击背后都是一句 SQL,看一眼再点,出不了事。
删过程不影响表里的数据,它只是一段代码,跟数据是两回事。
删掉的存储过程能找回来吗?
它们负责接住外面传进来的数据。

形参在没被调用之前是没有值的,只有调用发生时才拿到实参的值。
区别就一句话:数据从哪儿流到哪儿。

省略不写默认就是 IN。OUT 和 INOUT 的实参必须是 @ 变量。
课件这一页把用户会话变量叫成「全局变量」,其实它是会话级的。
个数、类型、传递方式都要跟形参对得上。

调完再 SELECT 一次那个变量,才看得到结果。

OUT 参数传常量当场报 1414,常量装不住带回来的值。
OUT 参数进去的时候是什么值?
最后那个格子填 @n,跟手敲一模一样。

对话框帮你把 CALL 语句拼好,OUT 那一格照样得填 @ 变量。
OUT 参数要把值带出来,常量存不了值,所以必须给一个变量的位置,报错号 1414。