MySQL数据库8(⼆⼗⼆)变量
变量
Mysql本质是⼀种编程语⾔,需要很多变量来保存数据。Mysql中有很多的属性控制都是通过mysql中固有的变量来实现的。
系统变量
系统内部定义的变量,系统变量针对所有⽤户(mysql客户端)有效
查看系统所有变量
show variables;
Mysql允许⽤户使⽤select查询变量的数据值(系统变量)
基本语法:select @@变量名;
修改系统变量
分为两种修改⽅式:
1、局部修改(会话级别):只针对当前⾃⼰客户端当次连接有效
基本语法:set 变量名 = 新值;
2、全局修改:针对所有客户端,“所有时刻”都有效mysql查看所有存储过程
基本语法:set global 变量名 = 值;或者 set @@global.变量名 = 值;python join
全局修改后,所有连接的客户端并没有发现改变?全局修改只针对新客户端⽣效(正在连着的⽆效)
注意:如果想要本次连接对应的变量修改有效,那么不能使⽤全局修改,只能使⽤会话级别修(set 变量名 = 值;)grid设置文件
会话变量
会话变量也称之为⽤户变量,会话变量跟mysql客户端是绑定的,设置的变量,只对当前⽤户使⽤的客户端⽣效。pretzel
定义⽤户变量:set @变量名 = 值;
在mysql只因为没有⽐较符号 ==,所以使⽤=代替⽐较符号,有时候在赋值的时候,会报错;mysql为了避免系统分不清是赋值还是⽐较:特定增加⼀个变量的赋值符号: :=
赋值:set @变量名:= 值;
无水印小视频下载Mysql是专门存储数据的:允许将数据从表中取出存储到变量中:查询得到的数据只能是⼀⾏数据(⼀个变量对应⼀个字段值):mysql中没有数组
1、赋值且查看赋值过程:select @变量1: =字段1,@变量2 : =  字段2 from 数据表 where条件;
错误语法:就是因为使⽤=,系统会当作⽐较符号来处理
正确使⽤: :=
2、只赋值不看过程:select 字段1,字段2…from 数据源 where 条件 into @变量1,@变量2…;
局部变量
作⽤范围在begin到end语句块之间。在该语句块⾥设置的变量,declare语句专门⽤于定义局部变量。
1、局部变量是使⽤declare关键字声明
2、局部变量declare语句出现的位置⼀定是在begin和end之间(begin end是在⼤型语句块中使⽤:函数/存储过程/触发器)
3、声明语法:declare 变量名数据类型[属性];
declare res int default 0;灰裤子搭配什么颜上衣好看
declare res int = 0;

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