MySQL中的变量
MySQL中的变量
1.概述:类似于java中的变量的概念,用于存储一些变化的数值存储空间和存储值叫变量。
2.MySQL中的变量分类
(1).系统变量:
全局变量
会话变量
(2).自定义变量:
用户变量
局部变量
MySQL中变量详解
1.系统变量
系统变量
1.说明:变量由系统定义,不是用户定义,属于服务器层面。
2.注意:全局变量需要添加global关键字,会话变量需要添加session关键字,如果不写,默认会话级
别。
3. 全局变量(globle)针对于所有会话(连接)有效,但不能跨重启;针对于当前会话(连接)有效.
如果说有这样的需求,我想我的设置要无论什么是都有效,那么只能修改MySQL的配置文件。修改配置
文件就可以永久有效。
4.查看不同级别的变量。
(1).查看满足条件的部分系统变量
show global|【session】 variables like '%条件%';其中条件就按照自己的需求来写
(2).查看指定的系统变量的值
select @@global|【session】系统
5.为某个系统变量赋值
方式一:
set global|【session】系统变量名=值;
方式二:
set @@global|【session】系统变量名=值;
(1).查看所有系统变量(截取部分)
(2).查看会话变量(注意:session可以省略,默认就是会话范围)
(3).查看满足条件的部分系统变量,如查看会话级别的字符集
(4).查看指定的某个系统变量的值(默认session)。
(5).为某一个变量赋值
2.自定义变量
自定义变量:
1.说明:变量由用户自定义,而不是系统提供的。
2.使用步骤:
1、声明
2、赋值
3、使用(查看、比较、运算等)
3.好处:更加的灵活,可以根据自己的需求来定义
4.分类
(1).用户变量
针对于当前会话(连接)有效,作用域同于会话变量。
(2).局部变量
作用域:仅仅在定义它的begin end块中有效。
应用在 begin end中的第一句话。
5.自定义变量使用详解
(1).用户变量的定义和使用
①声明并初始化
SET @变量名=值;
SET @变量名:=值;
SELECT @变量名:=值;
②赋值(更新变量的值)
方式一:
SET @变量名=值;
SET @变量名:=值;
SELECT @变量名:=值;
方式二:
SELECT 字段 INTO @变量名 FROM 表;
③使用(查看变量的值)
SELECT @变量名;
(2).局部变量的定义和使用
①声明
DECLARE 变量名 类型;
DECLARE 变量名 类型 【DEFAULT 值】;
②赋值(更新变量的值)
方式一:
SET 局部变量名=值;
SET 局部变量名:=值;
SELECT 局部变量名:=值;
方式二:
SELECT 字段 INTO 具备变量名 FROM 表;
③使用(查看变量的值)
SELECT 局部变量名;
6.用户变量和局部变量的对比
查看表格。
比较对象 | 作用域 | 定义位置 | 语法 |
用户变量 | 当前会话 | 会话的任何地方 | 加@符号,不用指定类型 |
局部变量 | 定义它的BEGIN END中 | BEGIN END的第一句话 | 一般不用加@,需要指定类型 |
(1).基本使用测试——用户变量使用测试
(2).基本使用测试——局部变量使用测试