[心缘地方]同学录
首页 | 功能说明 | 站长通知 | 最近更新 | 编码查看转换 | 代码下载 | 常见问题及讨论 | 《深入解析ASP核心技术》 | 王小鸭自动发工资条VBA版
登录系统:用户名: 密码: 如果要讨论问题,请先注册。

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

上一篇:[转帖]mysql存储过程实现的无限级分类,前序遍历树
下一篇:[备忘]mysql存储过程里,暂存记录的ID,以备使用

添加日期:2013/1/31 13:43:11 快速返回   返回列表 阅读3499次
使用SELECT …INTO语句为变量赋值
----------------------------------------------
在MySQL存储过程中,可以使用SELECT …INTO语句对变量进行赋值,该语句在数据库中进行查询,并将得到的结果赋值给变量。SELECT …INTO语句的语法格式如下:

SELECT col_name[,...] INTO var_name[,...] table_expr 
col_name:要从数据库中查询的列字段名;

var_name:变量名,列字段名按照在列清单和变量清单中的位置对应,将查询得到的值赋给对应位置的变量;

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

需要注意的是,在使用SELECT …INTO语句时,变量名不能和数据表中的字段名不能相同,否则会出错。范例语句:


create procedure getMsg ()  
Begin 
declare v_title varchar(30);  
declare v_content varchar(100);  
select title,content into v_title,v_content from news where artId=333;  
End

 
 
将变量值返回给调用者
在存储过程中定义的变量,经过一系列的处理之后,结果值可能需要返回给存储过程调用者。那么如何返回呢?方便的做法是使用SELECT语句将变量作为结果集返回,因此,在上面一段代码的基础上,加上一句:


create procedure getMsg ()  
Begin 
declare v_title varchar(30);  
declare v_content varchar(100);  
select title,content into v_title,v_content from news where artId=333;  
select v_title,v_content;  
End

 

评论 COMMENTS
没有评论 No Comments.

添加评论 Add new comment.
昵称 Name:
评论内容 Comment:
验证码(不区分大小写)
Validation Code:
(not case sensitive)
看不清?点这里换一张!(Change it here!)
 
评论由管理员查看后才能显示。the comment will be showed after it is checked by admin.
CopyRight © 心缘地方 2005-2999. All Rights Reserved