mysql 存储过程如何声明变量

mysql 存储过程如何声明变量,第1张

DECLARE var_name[,...] type [DEFAULT value]

这个语句被用来声明局部变量

要给变量提供一个默认值,请包含一个DEFAULT子句。

值可以被指定为一个表达式,不需要为一个常数。

如果没有DEFAULT子句,初始值为NULL。

局部变量的作用范围在它被声明的BEGIN ... END块内。

它可以被用在嵌套的块中,除了那些用相同名字声明变量的块。

下面是一个简单的 存储过程的例子.

DECLARE v_index INT

定义一个 名称为 v_index 的变量, 类型为 INT

MYSQL 变量定义应该只能在 存储过程, 函数里面定义.

不像 Oracle / SQL Server , 一个 BEGIN / END 里面就可以定义/执行了。

mysql>DELIMITER //

mysql>CREATE PROCEDURE TestWhile()

->BEGIN

-> DECLARE v_index INT

->

-> SET v_index = 0

->

-> WHILE v_index <5 DO

->SET v_index = v_index + 1

->SELECT v_index

-> END WHILE

->

->END//

Query OK, 0 rows affected (0.00 sec)

以 DECLARE 关键字声明的变量,只能在存储过程中使用,称为存储过程变量,

例如:

DECLARE var1 INT DEFAULT 0

主要用在存储过程中,或者是给存储传参数中。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7264872.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存