重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

mysql怎么赋值为变量 mysql给字段赋值

Mysql将存储过程执行后的值赋值给变量

Mysql存储过程查询结果赋值到变量的方法

为阿巴嘎等地区用户提供了全套网页设计制作服务,及阿巴嘎网站建设行业解决方案。主营业务为网站建设、成都做网站、阿巴嘎网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

把查询结果赋值到变量,大部分情况下使用游标来完成,但是如果明确知道查询结果只有一行(例如统计记录的数量,某个字段求和等),其实可以使用set或into的方式来实现赋值。示例代码:

drop table if exists test_tbl;

create table test_tbl (name varchar(20), status int(2));

insert into test_tbl values('abc', 1),('edf', 2),('xyz', 3);

drop procedure IF EXISTS pro_test_3;

delimiter //

create procedure pro_test_3()

begin

DECLARE cnt INT DEFAULT 0;

select count(*) into cnt from test_tbl;

select cnt;

-- 多个列的情况下似乎只能用 into 方式

select max(status), avg(status) into @max, @avg from test_tbl;

select @max, @avg;

end

delimiter ;

call pro_test_3();

如何将MYSQL查询结果赋值给一个变量

sprintf(query, "SELECT *FROM history WHERE serialnumber='%s' AND adtcode='%s' LIMIT 1;", dataStr,modulename);

if (!mysql_real_query(mysql, query, (unsigned long)strlen(query))) {

res = mysql_use_result(mysql);

numfields = mysql_field_count(mysql);

while (row=mysql_fetch_row(res)) {

fprintf(outfile, "\r\n");

lengths = mysql_fetch_lengths(res);

fields=mysql_fetch_fields(res);

for (i=0; inumfields; i++) {

fprintf(outfile, "%.*s ", (int)lengths[i], row[i]);

}

}

mysql 怎么定义变量

一、局部变量

局部变量一般用在sql语句块中,比如存储过程的begin/end。其作用域仅限于该语句块,在该语句块执行完毕后,局部变量就消失了。

局部变量一般用declare来声明,可以使用default来说明默认值。

二、用户变量

用户变量的作用域要比局部变量要广。用户变量可以作用于当前整个连接,但是当当前连接断开后,其所定义的用户变量都会消失。

用户变量使用如下(这里我们无须使用declare关键字进行定义,可以直接这样使用):

select @变量名

对用户变量赋值有两种方式,一种是直接用"="号,另一种是用":="号。其区别在于使用set命令对用户变量进行赋值时,两种方式都可以使用;当使用select语句对用户变量进行赋值时,只能使用":="方式,因为在select语句中,"="号被看作是比较操作符。

mysql 进:在存储过程中用select 如何给变量赋值

用select...into语句

下面是mysql 5.0的帮助文档的:

这个SELECT语法把选定的列直接存储到变量。因此,只有单一的行可以被取回。

SELECT id,data INTO x,y FROM test.t1 LIMIT 1;

注意,用户变量名在MySQL 5.1中是对大小写不敏感的。请参阅9.3节,“用户变量”。

重要: SQL变量名不能和列名一样。如果SELECT ... INTO这样的SQL语句包含一个对列的参考,并包含一个与列相同名字的局部变量,MySQL当前把参考解释为一个变量的名字。例如,在下面的语句中,xname 被解释为到xname variable 的参考而不是到xname column的:

CREATE PROCEDURE sp1 (x VARCHAR(5))

BEGIN

DECLARE xname VARCHAR(5) DEFAULT 'bob';

DECLARE newname VARCHAR(5);

DECLARE xid INT;

SELECT xname,id INTO newname,xid

FROM table1 WHERE xname = xname;

SELECT newname;

END;

当这个程序被调用的时候,无论table.xname列的值是什么,变量newname将返回值‘bob’。

mysql环境中,如何用sql语句给字符串变量赋值?

mysql给字符串变量赋值的方法是用select into 变量结构完成赋值。

使用sql的结构语法:

SELECT ... INTO var_list selects column values and stores them into variables.

比如定义一个sql变量:

@x varchar(10);

@y varchar(20);

select id,name INTO @x,@y from dx_tt

这样就完成了赋值。


分享名称:mysql怎么赋值为变量 mysql给字段赋值
分享网址:http://cqcxhl.com/article/hgggie.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP