mysql有臨時(shí)變量。MySQL變量可分為臨時(shí)變量、局部變量、會(huì)話變量和全局變量;其中臨時(shí)變量就是用戶變量,需要配合“@”符使用,不需要聲明,用法為“set @name=value;”和“select @num=value;”。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
MySQL官方手冊(cè)里是將變量分為系統(tǒng)變量和用戶變量的,用戶變量就是在一個(gè)語(yǔ)句里加在用戶自定義的變量,然后這個(gè)變量可以賦值給其它變量,或者在另外一個(gè)語(yǔ)句里調(diào)用等。
不過(guò)有些地方也將變量按照用法分為:
-
1、臨時(shí)變量(@符號(hào)的情況,也就是mysql手冊(cè)介紹的用戶變量);
-
2、局部變量(declare方式);
-
3、會(huì)話變量;
-
4、全局變量(也就是系統(tǒng)變量)。
其實(shí)分類只是為了方便記錄學(xué)習(xí),重點(diǎn)是掌握用法原理就可以
聲明標(biāo)準(zhǔn)變量
DECLARE end_flag INT DEFAULT 0;
臨時(shí)變量@(不需要聲明)
只在局部起作用
用法一:set @name=value;
set @num=1; set @num:=1;
用法二:select @num=value;
select @num:=1; select @num:=字段名 from 表名 where ……
全局變量@@
系統(tǒng)變量,只能讀取,不能修改,如@@error
局部變量(declare聲明變量)
declare聲明變量:declare聲明關(guān)鍵字可以用于定義變量,一般用于存儲(chǔ)過(guò)程或者自定義函數(shù)里
a)、declare聲明變量
用法:聲明一個(gè)v1變量,定義為int類型,默認(rèn)值為0;
declare v1 INT default 0;
b)、declare變量使用
聲明后變量一般是在存儲(chǔ)過(guò)程或者自定義里的,所以是寫在begin和end關(guān)鍵字之間的,外面的不能直接定義,然后調(diào)用,所以declare也被稱之為局部變量
【