关于mysql存储过程变量的问题? 关于mysql存储过程变量的问题?变量什么时候前面要加@符号,用declare声明的变量与前者有和区别,我不懂? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 前面加@代表会话变量,作用域是当前登录的账户,declare申明的变量只在存储过程内部有效。通过下面的例子你就能明白:mysql> create procedure pro1() -> begin -> declare d int; -> select max(id) into d from o; -> set @dd=0; -> select max(id) into @dd from o; -> end; -> //Query OK, 0 rows affected (0.05 sec)mysql> call pro1; -> //Query OK, 0 rows affected (0.00 sec)mysql> select @dd; -> //+------+| @dd |+------+| 2 |+------+1 row in set (0.00 sec)mysql> select d//ERROR 1054 (42S22): Unknown column 'd' in 'field list' php注册提交可以写到数据库中,但是不能显示注册成功执行不了之后,是哪里不对?的语句 查询问题 php+mysql优化搜索引擎的搜索结果【有酬】 谁有比较全的新的php参考手册 文件上传,急。真的快晕死了。。。。 php查询数据库问题 apache+php为什么不能使用mail函数?还有cookie不能覆盖,不能被清空? 请★userspring(辰)★进来领分 ORA-03106 fatal two-task communication protocol error 如何让apahce4.0.43支持php4 帮忙看看这个正则 php基础问题
通过下面的例子你就能明白:mysql> create procedure pro1()
-> begin
-> declare d int;
-> select max(id) into d from o;
-> set @dd=0;
-> select max(id) into @dd from o;
-> end;
-> //
Query OK, 0 rows affected (0.05 sec)mysql> call pro1;
-> //
Query OK, 0 rows affected (0.00 sec)mysql> select @dd;
-> //
+------+
| @dd |
+------+
| 2 |
+------+
1 row in set (0.00 sec)mysql> select d//
ERROR 1054 (42S22): Unknown column 'd' in 'field list'