變量和Java中類似
- 系統變量:系統提供,不是用戶定義,屬於服務器層面
- 查看所有系統變量
show global|session variables;
- 查看滿足條件的部分系統變量
show global|session variables like ‘%char%’
- 查看指定的某個系統變量的值
select @@global|session.系統變量名;
- 爲某個系統變量賦值
方式一、
set global|session 系統變量名 = 值;
方式二、
set @@ global|session.系統變量名=值;
查看全局或回話變量,默認回話變量可不寫session
全局變量
作用域:服務器每次啓動爲每個變量初始化,服務器未重啓之前對所有回話有效
- 查看所有全局變量
Show global variable;
- 查看部分全局變量
Show global variable like ‘%char%’;
- 查看指定全局變量的值
Select @@global.變量名;
Select @@變量名;
4、修改指定全局變量名
Set @@global.變量名 =值;
會話變量
作用域:僅針對於當前回話有效
- 查看所有回話變量
Show session variable;
- 查看部分回話變量
Show session variable like ‘%char%’;
- 查看指定的回話變量
Select @@session.變量名;
Select @@變量名;
- 爲某個回話變量賦值
Set @@變量名=’值’;
二、自定義變量:用戶自己定義,不是系統定義的
使用步驟:聲明、賦值、使用(查看、比較、運算等)
用戶變量
作用域:同會話變量作用域
應用在任何地方,可以在begin end裏面或外面
1、聲明並初始化
Set @用戶變量名=值; 或
Set @用戶變量名:=值; 或
Select @用戶變量:=值
2、賦值
方式一
Set @用戶變量名=值; 或
Set @用戶變量名:=值; 或
Select @用戶變量:=值;
方式二
Select 字段 into @變量名 from 表;
-
- 查看
Select @變量名;
局部變量
作用域:僅僅在定義它的begin end中且爲第一句話中有效
- 聲明
Declare 變量名 類型;
Declare 變量名 類型 default 值;
- 賦值
方式一、
Set 局部變量名=值; 或
Set 局部變量名:=值; 或
Select @局部變量:=值
方式二、
Select 字段 into 局部變量名 from 表;
- 使用
Select 局部變量名;