本文目錄一覽:
mysql如何把查詢結果直接賦值給變數
以java為例子
java中定義好了一個保存記錄的結果集ResultSet,
在通過sql語句查詢出相關數據時候,程序會將其放入ResultSet中。
通過ResultSet的內部函數就可以讀出了。
一般存儲不用數組,可以根據需要,自定義一個數據類型(這個C++和java都支持的)
如何將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將存儲過程執行後的值賦值給變數
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();
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/233745.html