mysql变量定义(declare,t,@)使用实例讲解

更新时间:2023-06-22 12:05:10 阅读: 评论:0

mysql变量定义(declare,t,@)使⽤实例讲解
mysql变量的种类
1. ⽤户变量:以”@”开始,形式为”@变量名”。⽤户变量跟mysql客户端是绑定的,设置的变量,只对当前⽤户使⽤的客户端⽣效
2. 全局变量:定义时,以如下两种形式出现,t GLOBAL 变量名  或者  t @@global.变量名,对所有客户端⽣效。只有具有super
权限才可以设置全局变量
3. 会话变量:只对连接的客户端有效。
4. 局部变量:作⽤范围在begin到end语句块之间。在该语句块⾥设置的变量。declare语句专门⽤于定义局部变量。t语句是设置不同
类型的变量,包括会话变量和全局变量
通俗理解术语之间的区别:
⽤户定义的变量就叫⽤户变量。这样理解的话,会话变量和全局变量都可以是⽤户定义的变量。只是他们是对当前客户端⽣效还是对所有客户端⽣效的区别了。所以,⽤户变量包括了会话变量和全局变量
局部变量与⽤户变量的区分在于两点:1.⽤户变量是以”@”开头的。局部变量没有这个符号。2.定义变量不同。⽤户变量使⽤t语句,局部变量使⽤declare语句定义 3.作⽤范围。局部变量只在begin-end语句块之间有效。在begin-end语句块运⾏完之后,局部变量就消失了。
所以,最后它们之间的层次关系是:变量包括局部变量和⽤户变量。⽤户变量包括会话变量和全局变量。
mysql declare定义变量
mysql declare⽤于定义变量,在存储过程和函数中通过declare定义变量在BEGIN…END中,且在语句之前。并且可以通过重复定义多个变量
declare变量的作⽤范围同编程⾥⾯类似,在这⾥⼀般是在对应的begin和end之间。在end之后这个变量就没有作⽤了,不能使⽤了。这个同编程⼀样。
portray注意:declare定义的变量名不能带‘@’符号,mysql在这点做的确实不够直观,往往变量名会被错成参成人高考有学籍吗
数或者字段名。
mysql存储过程中使⽤declare定义变量,实例如下:
DROP PROCEDURE IF EXISTS inrt_ten_rows $$四级作文万能句
CREATE PROCEDURE inrt_ten_rows ()
BEGIN
policewomenDECLARE crs INT DEFAULT 0;
WHILE crs < 10 DO
INSERT INTO `continent`(`name`) VALUES ('cont'+crs);
SET crs = crs + 1;
END WHILE;
trickster
END $$
美国独立日
DELIMITER ;
mysql SET定义变量
mysql t也可以⽤来定于变量,定义变量的形式是以”@”开始,如:”@变量名”。
mysql SET定义变量实例:
mysql> SET @t1=0, @t2=1, @t3=2;
mysql> lect @t1;
+------+
幼儿启蒙| @t1  |
+------+
| 0    |
+------+
mysql> lect @t2;
+------+
| @t2  |
+------+
| 1    |
+------+
/*  /article/1442.html */
mysql> lect @t3;
+------+
| @t3  |
+------+
| 2    |
+------+
mysql>
复杂⼀点的实例:
mysql> SET @t1=0, @t2=1, @t3=2;
mysql> SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
+----------------------+------+------+------+
camera| @t1:=(@t2:=1)+@t3:=4 | @t1  | @t2  | @t3  |
+----------------------+------+------+------+
|                    5 | 5    | 1    | 4    |
+----------------------+------+------+------+
mysql declare和t定义变量的区别on the road
mysql declare和t定义变量,除了⼀个不加@和⼀个加@这个区别之外,还有以下区别:
declare⽤来定义局部变量
@⽤来定义会话变量
国家建造师网declare变量的作⽤范围同编程⾥⾯类似,在这⾥⼀般是在对应的begin和end之间。在end之后这个变量就没有作⽤了,不能使⽤了。这个同编程⼀样。
另外有种变量叫做会话变量(ssion variable),也叫做⽤户定义的变量(ur defined variable)。这种变量要在变量名称前⾯加
上“@”符号,叫做会话变量,代表整个会话过程他都是有作⽤的,这个有点类似于全局变量⼀样。这种变量⽤途⽐较⼴,因为只要在⼀个会话内(就是某个应⽤的⼀个连接过程中),这个变量可以在被调⽤的存储过程或者代码之间共享数据。

本文发布于:2023-06-22 12:05:10,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/78/1013288.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:变量   定义   局部变量
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图