MySQL存儲過程中使用SELECT …INTO語句為變量賦值


使用SELECT …INTO語句為變量賦值

在MySQL存儲過程中,可以使用SELECT …INTO語句對變量進行賦值,該語句在數據庫中進行查詢,並將得到的結果賦值給變量。SELECT …INTO語句的語法格式如下:

  1. SELECT col_name[,...] INTO var_name[,...] table_expr 

col_name:要從數據庫中查詢的列字段名;

var_name:變量名,列字段名按照在列清單和變量清單中的位置對應,將查詢得到的值賦給對應位置的變量;

table_expr:SELECT語句中的其余部分,包括可選的FROM子句和WHERE子句。

需要注意的是,在使用SELECT …INTO語句時,變量名不能和數據表中的字段名不能相同,否則會出錯。范例語句:

  1. create procedure getMsg  
  2. ()  
  3. Begin 
  4. declare v_title varchar(30);  
  5. declare v_content varchar(100);  
  6. select title,content into v_title,v_content from news where artId=333;  
  7. End  

 

將變量值返回給調用者

在存儲過程中定義的變量,經過一系列的處理之后,結果值可能需要返回給存儲過程調用者。那么如何返回呢?方便的做法是使用SELECT語句將變量作為結果集返回,因此,在上面一段代碼的基礎上,加上一句:

  1. create procedure getMsg  
  2. ()  
  3. Begin 
  4. declare v_title varchar(30);  
  5. declare v_content varchar(100);  
  6. select title,content into v_title,v_content from news where artId=333;  
  7. select v_title,v_content;  
  8. End 


免責聲明!

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



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