数据库MySQL-变量
系统变量:
全局变量
会话变量
自定义变量:
用户变量
局部变量
*/
一、系统变量
说明:变量由系统提供,不是用户定义,属于服务器层面
使用的语法:
1、查看所有的系统变量
SHOW GLOBAL|【SESSION】 VARIABLES
2、查看满足条件的部分系统变量
SHOW GLOBAL|【SESSION】 variable LIKE '';
3、查看指定的某个系统变量的值
SELECT @@global|【SESSION】.系统变量名;
4、为某个系统变量赋值
方式一、
SET GLOBAL|【SESSION】 系统变量名 = 值;
方式二、
SET @@global|【SESSION】.系统变量名 = 值;
注意:
如果是全局级别,则需要加GLOBAL,如果是会话级别,则需要加SESSION,如果不写,则默认SESSION
1)全局变量:
2)会话变量:
二、自定义变量
说明:变量时用户自定义的,不是由系统给定的
使用步骤:
声明
赋值
使用(查看、比较、运算等)
*/
赋值的操作符:=或:=
1)声明并初始化
SET @用户变量名=值; 或
SET @用户变量名:=值; 或
SELECT @用户变量名:=值;
2)赋值(更新用户变量的值)
方式一:通过SET或SELECT
SET @用户变量名=值; 或
SET @用户变量名:=值; 或
SELECT @用户变量名:=值;
方式二:
SELECT 字段 INTO @变量名
FROM 表;
3)使用(查看用户变量的值)
SELECT @用户变量名
1)声明
DECLARE 变量名 类型;
DECLARE 变量名 类型 DEFAULT 值;
2)赋值
方式一:通过SET或SELECT
SET 局部变量名=值; 或
SET 局部变量名:=值; 或
SELECT @局部变量名:=值;
方式二:
SELECT 字段 INTO 变量名
FROM 表;
3)使用
SELECT 局部变量名
作用域 定义和使用的位置 语法
用户变量 当前会话 会话中的任何地方 必须加@符号,不用限定类型
局部变量 BEGIN END中 只能在BEGIN END中,且为第一句话 一般不用加@符号,需要限定类型