1. 程式人生 > >其他(二) -- 變量

其他(二) -- 變量

from end 使用 用戶 連接 權限 作用 declare ble

分類

一、系統變量

  說明:變量有系統提供的,不用自定義

語法:

① 查看系統變量

SHOW 【GLOBAL|SESSION】 VARIABLES LIKE ‘‘;

如果沒有顯式聲明 global 還是 session,則默認為 session

② 查看指定的系統變量的值
SELECT @@【GLOBAL|SESSION】 ,變量名;

如果沒有顯式聲明 global 還是 session,則默認為 session

③ 為系統變量賦值

方式一:
SET 【GLOBAL|SESSION】 變量名 = 值;

方式二:
SET @@GLOBAL.變量名 = 值;

SET @@變量名 = 值;

1、全局變量

  服務器層面上的,必須擁有 super 權限才能為系統變量賦值,作用域為整個服務器,也就是針對於所有連接(會話)有效

2、會話變量

  服務器為每一個連接的客戶端提供了系統變量,作用域為當前的連接(會話)

二、自定義變量

說明:

1、用戶變量

作用域:針對於當前連接(會話)生效

位置:begin end 裏面,也可以放在外面

使用:

① 聲明並賦值

SET @變量名 = 值;
SET @變量名 := 值;
SELECT @變量名 := 值;

② 賦值(更新值)

方式一:

SET @變量名 = 值;
SET @變量名 := 值;
SELECT @變量名 := 值;

方式二:

SELECT 值 INTO @變量名 FROM 表;

③ 使用

SELECT @變量名;

2、局部變量

作用域:僅僅在定義它的 begin end 中有效

位置:只能放在begin end 中,而且只能放在第一句

使用:

① 聲明

DECLARE 變量名 類型 【DEFAULT 值】;

② 賦值或更新

方式一:

SET 變量名 = 值;
SET 變量名 := 值;
SELECT @變量名 := 值;

方式二:

SELECT 值 INTO 變量名 FROM 表;

③ 使用

SELECT @變量名;

其他(二) -- 變量