mysql查詢結(jié)果賦值給變量 mysql進(jìn):在存儲過程中用select如何給變量賦值?
mysql進(jìn):在存儲過程中用select如何給變量賦值?存儲過程是特定于庫的。有些操作是通過一段代碼對庫執(zhí)行的。具體的代碼格式如下:(R賦值給變量:(R)定義存儲過程中的變量;(R)賦值給存儲過程中的
mysql進(jìn):在存儲過程中用select如何給變量賦值?
存儲過程是特定于庫的。有些操作是通過一段代碼對庫執(zhí)行的。具體的代碼格式如下:(R
賦值給變量:(R)定義存儲過程中的變量;(R)賦值給存儲過程中的變量;(R)存儲過程的主體是存儲過程的實(shí)例;(R)存儲過程的參數(shù)有三種類型:in/out/inout。In是可在存儲過程中使用的傳入類參數(shù),out是可設(shè)置為外部變量的值,inout是同時具有兩個函數(shù)的函數(shù)。例如,要刪除存儲過程,請使用Mysql存儲該過程。例如,if else then語句、case語句或While end While語句:例如,選擇。。。變成陳述。以下是MySQL5.0的幫助文檔:
此select語法將所選列直接存儲到變量中。因此,只能檢索一行。
從測試中選擇id、數(shù)據(jù)到x、y。T1 limit 1
注意MySQL 5.1中的用戶變量名不區(qū)分大小寫。參見第9.3節(jié)“用戶變量”。
重要提示:SQL變量名不能與列名相同。如果一個SQL語句,如select。。。Into包含對列的引用和與列同名的局部變量,MySQL當(dāng)前將引用解釋為變量的名稱。例如,在下面的語句中,xname被解釋為對xname變量的引用,而不是對xname列的引用:
create procedure SP1(x varchar(5))
begin
declare xname varchar(5)default “Bob”
declare newname varchar(5)
declare XID int
從表1中選擇xname,ID into newname,XIDxname=xname
選擇調(diào)用該程序的時間,無論表.xname這個列的值是多少?變量newname將返回值“Bob”。
mysql進(jìn):在存儲過程中用select如何給變量賦值?
Declare是聲明變量。聲明必須指定變量的數(shù)據(jù)類型。它只能寫在程序前面。Set是給變量賦值。它可以放在過程中的任何地方,為尚未聲明的變量賦值。變量必須用@符號標(biāo)記。否則,將報告一個錯誤:聲明一個int--如果它放在下面的語句之后,將報告一個錯誤:set a=(select id from TB)--如果前面沒有語句,將報告一個錯誤set@b=(select title from TB)