码迷,mamicode.com
首页 > 数据库 > 详细

MySQL存储过程中使用SELECT …INTO语句为变量赋值

时间:2018-01-17 20:09:45      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:new   int   class   语句   rom   变量   declare   sql存储过程   查询   

使用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 

MySQL存储过程中使用SELECT …INTO语句为变量赋值

标签:new   int   class   语句   rom   变量   declare   sql存储过程   查询   

原文地址:https://www.cnblogs.com/fnlingnzb-learner/p/8304094.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!