變量

系統(tǒng)變量

說明:變量由系統(tǒng)提供,不是用戶定義,屬于服務(wù)器層面
一、全局變量

作用域:針對(duì)于所有會(huì)話(連接)有效,但不能跨重啟

    查看所有全局變量
    SHOW GLOBAL VARIABLES;
    查看滿足條件的部分系統(tǒng)變量
    SHOW GLOBAL VARIABLES LIKE '%char%';
    查看指定的系統(tǒng)變量的值
    SELECT @@global.autocommit;
    為某個(gè)系統(tǒng)變量賦值
    SET @@global.autocommit=0;
    SET GLOBAL autocommit=0;
    
Eg.
    ①查看所有的全局變量
    SHOW GLOBAL VARIABLES;
    
    ②查看部分的全局變量
    SHOW GLOBAL VARIABLES LIKE '%char%';
    
    ③查看指定的全局變量的值
    SELECT @@global.autocommit;
    SELECT @@tx_isolation;
    
    ④為某個(gè)指定的全局變量賦值
    SET @@global.autocommit=0;

二、會(huì)話變量

作用域:針對(duì)于當(dāng)前會(huì)話(連接)有效

Eg.
    ①查看所有會(huì)話變量
    SHOW SESSION VARIABLES;
    
    ②查看滿足條件的部分會(huì)話變量
    SHOW SESSION VARIABLES LIKE '%char%';
    
    ③查看指定的會(huì)話變量的值
    SELECT @@autocommit;
    SELECT @@session.tx_isolation;
    
    ④為某個(gè)會(huì)話變量賦值
    SET @@session.tx_isolation='read-uncommitted';
    SET SESSION tx_isolation='read-committed';

自定義變量

一、用戶變量

聲明并初始化:
    SET @變量名=值;
    SET @變量名:=值;
    SELECT @變量名:=值;
    
賦值:
    方式一:一般用于賦簡單的值
    SET 變量名=值;
    SET 變量名:=值;
    SELECT 變量名:=值;

    方式二:一般用于賦表 中的字段值
    SELECT 字段名或表達(dá)式 INTO 變量
    FROM 表;

使用:

    select @變量名;

二、局部變量

聲明:
    declare 變量名 類型 【default 值】;
    
賦值:
    方式一:一般用于賦簡單的值
    SET 變量名=值;
    SET 變量名:=值;
    SELECT 變量名:=值;

    方式二:一般用于賦表 中的字段值
    SELECT 字段名或表達(dá)式 INTO 變量
    FROM 表;

使用:

    select 變量名
二者的區(qū)別:
    作用域 | 定義位置 | 語法
    - | - | -
    用戶變量 | 當(dāng)前會(huì)話 | 加@符號(hào),不用指定類型
    局部變量 | 定義它的BEGIN END中 | BEGIN END的第一句話  一般不用加@,需要指定類型
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容