mysql中變量的定義


最近整理了下關於mysql數據庫中關於變量的定義 ,感覺對這些知識的印象加深了許多,分享出來,希望大家可以來指出我的錯誤,共同提高技術

變量分為系統變量和自定義變量。

   1.系統變量(系統提供的,不需要自定義)分為全局變量和會話變量。

   2.自定義變量分為用戶變量和局部變量。

  注意:和java中的變量一樣的,需要聲明賦值,再使用。

#系統變量(默認是session) 以系統變量為例,會話變量和系統變量類似
#作用范圍:服務器每一次啟動都會為全局變量賦默認初始值,如果修改了全局變量的值,只在本次服務的聲明周期內有效,重啟服務將恢復默認值
#查看系統變量  
SHOW GLOBAL/SESSION VARIABLES
#通過模糊查詢方式 
SHOW GLOBAL/SESSION VARIABLES LIKE '%auto%'
#查看指定的變量 
SELECT @@GLOBAL/SESSION.系統變量名
#為變量賦值
SET GLOBAL/SESSION 系統變量名=值
SET @@GLOBAL/SESSION.系統變量名=值
#查看所有變量
SHOW GLOBAL VARIABLES;
#查看指定的變量
SHOW GLOBAL VARIABLES LIKE '%tx%'
#查看指定部分的變量
SELECT @@GLOBAL.autocommit
SELECT @@tx_isolation
#為指定的變量賦值
SET @@GLOBAL.autocommit=TRUE;
SET GLOBAL autocommit=false;

#自定義變量:遵循變量的聲明,賦值,使用
#1.用戶變量:針對一次有效的數據庫連接有效。
#聲明變量
SET @用戶變量名=值
SET @用戶變量:=值
SELECT @用戶變量:=值
#賦值方式1:
SET @用戶變量名=值
SET @用戶變量:=值
SELECT @用戶變量:=值
SET @count_people=0;
#賦值方式2
SELECT 字段 INTO @變量名 FROM 表(查詢的字段值只能有一個)
SELECT COUNT(*) INTO @count_people1 FROM employee
#查看變量
SELECT @count_people1;

#2.局部變量:只在begin ~ end 中有效,而且只能使用在begin ~ end 中的第一行
#局部變量聲明:
#DECLARE 變量名稱 類型;
#DECLARE 變量名稱 類型 DEFAULT 默認值;
#賦值1
SET 局部變量名=值;
SET 局部變量名:= 值;
#賦值2
SELECT 字段1,字段2 INTO 局部變量名1,局部變量名2 FROM 表(查詢的字段只能是一個)

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM