mysql中主要有區域性變數和會話變數兩種。區域性變數只在定義該區域性變數的begin…end範圍內有效,會話變數在整個儲存過程範圍內均有效。
區域性變數以關鍵字declare關鍵字來定義,後面跟變數名和變數型別,語法格式如下:
declare var_name[,...] type [default value]
引數說明:
(1)declare:用來宣告變數的關鍵字。
(2)var_name:設定變數的名稱。還可以同時定義多個變數,以英文逗號分隔。
(3)type:指定變數的資料型別。
(4)default value:可選項,用來指定變數的預設值。
示例:使用declare關鍵字定義區域性變數。
create procedure p1()
begin
declare num1,num2 int default 10;
declare str char(10);
select num1; -- 輸出結果:10
select num2; -- 輸出結果:10
select str; -- 輸出結果:null
end;
mysql中的會話變數(全域性變數)不必宣告即可使用,會話變數在整個過程中有效,會話變數名以字元「@」作為起始字元。
示例:定義會話變數
set @x = 10;
select @x;
mysql中可以使用set關鍵字來為變數賦值。
示例:使用set關鍵字為變數賦值。
set @x = 10;
另外,mysql中還可以使用select語句為變數賦值,其語法格式如下:
select col_name[,...] into var_name[,...] from table_name where condition;
引數說明:
(1)col_name:查詢的欄位名稱。
(2)var_name:變數的名稱。
示例:使用select語句為變數賦值。
-- 變數賦值
select row_no,book_name into @row,@name from tb_book where id = 1;
-- 輸出結果
select @row;
select @name;
或者使用「:=」符號進行賦值:
select @row := row_no,@name := book_name from tb_book where id = 1;
注意:使用set賦值時可以用「=」或「:=」,但是使用select語句賦值時必須用「:=賦值」。 mysql 使用變數 MySQL變數的使用
在編寫儲存過程中,有時需要使用變數,儲存資料處理過程中的值 mysql中,變數可以在子程式中,宣告並使用,作用範圍在begin end程式中 在儲存過程中,使用declare語句,定義變數 語法格式 declare var name varname date type default value v...
mysql 使用變數 MySQL變數的用法
文章目錄 隱藏 定義變數 引數說明 使用set為變數賦值 使用select into為變數賦值 引數說明 在編寫儲存過程中,有時需要使用變數,儲存資料處理過程中的值 mysql中,變數可以在子程式中,宣告並使用,作用範圍在begin end程式中 定義變數 在儲存過程中,使用declare語句,定義...
MySQL變數的使用
在編寫儲存過程中,有時需要使用變數,儲存資料處理過程中的值 mysql中,變數可以在子程式中,宣告並使用,作用範圍在begin end程式中 在儲存過程中,使用declare語句,定義變數 語法格式 declare var name varname date type default value v...