MySql(二十三)变量之系统变量


变量概括图如下:
在这里插入图片描述

变量

  1. 系统变量:分为全局变量和会话变量
  2. 自定义变量:分为用户变量和局部变量

系统变量

系统变量:分为全局变量和会话变量

定义:即系统变量是由系统提供的,属于服务器层面的(即当服务器启动的时候,它会提供这样的一组系统变量并且赋予默认值供我们来使用)

注;由于系统变量是有系统提供的,因此不需要我们自己定义便可以使用。

使用语法如下:

1. 查看所有的系统变量

show global | session variables;

2. 查看满足条件的部分系统变量

show global | session variables like ‘%char%’; //例如查看包含字符’char’的系统变量

3 查看指定的某个系统变量的值

select @@系统变量名; //默认查看的是系统变量中的会话变量

select @@session.系统变量名; //查看系统变量中的会话变量

select @@global.系统变量名; //查看系统变量中的全局变量

4 .为某个系统变量赋值

方式一:set global | session 系统变量名 = 值;

方式二:set @@global.系统变量名 = 值;

​ set @@session.系统变量名 = 值;

注:如果系统变量是全局级别,则需要加global;如果是会话级别则需要加session。如果什么都不写,则默认是session级别

全局变量

全局变量的作用域:

​ 服务器每次启动将为所有的全局变量赋初始值;它针对于所有的会话(连接)都有效,但是不能跨服务器(重启服务器将会失效)。

  1. 查看所有的全局变量:

Show global variables;

  1. 查看部分的全局变量

Show global variables like ‘%char%’; //查看包含字符’char’的全局变量

  1. 查看指定的全局变量

Select @@global.全局变量名;

Eg:select @@global.autocommit;

  1. 为某个指定的全局变量赋值

Set @@golbal.全局变量名 = 值;

Set @@global.autocommit = 0;

会话变量

作用域:仅仅针对于当前的会话(连接)有效

  1. 查看所有的会话变量

方法一:Show sessionl variables;

方法二:Show variables;

2.查看部分的会话变量

方法一:Show session variables like ‘%char%’; //查看包含字符’char’的会话变量

方法二:Show variables like ‘%char%’;

3查看指定的会话变量

方法一:Select @@session.会话变量名;

方法二:select @@会话变量名;

Eg:select @@session.tx_isolation;

Select@@tx_isolation;

4为某个指定的会话变量赋值

方法一:Set @@session 会话变量名 = 值;

方法二:set @@会话变量名 = 值;

Set @@session tx_isolation = ‘read-uncommitted’;

Set @@ tx_isolation = ‘read-uncommitted’;

1. 系统变量之全局变量和会话变量的比较:
注:这里的【】代表的是可以省略。

系统变量主要的应用就是‘使用’:即包含查看,更新赋值

系统变量声明查看所有对应变量查看满足条件的指定变量查看某个指定的变量为某个指定变量赋值
全局变量由系统自定义,因此不需要声明Show global variables;Show global variables like ‘%字符%’;Select @@global.变量名;set global 变量名 = 值;或者 Set @@golbal.变量名 = 值;
会话变量由系统自定义,因此不需要声明Show 【session】 variables;Show 【session 】variables like ‘%字符%’;Select @@【session.】变量名;set session 变量名 = 值; Set @@【session 】变量名 = 值;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值