1樓:愛玩兒標槍的野人
不可以delimeter //
create procedure pro_latest(in num int)
begin
set @n = num;
prepare sqlstring from "select * from product order by timestamp desc limit ? " ;
execute sqlstring using @n;
end//
delimeter ;
2樓:
這種情況得用動態語句:
delimeter //
create procedure pro_latest(in num int)
begin
set @str=concat('select * from product order by `timestamp` desc limit ', num);
prepare stmt1 from @str;
execute stmt1;
deallocate prepare stmt1;
end//
delimeter ;
3樓:
這個沒用過,我想應該是跟mysql的版本有關係吧!
mysql儲存過程支援用表作為引數嗎
這個問題在mysql 以前非常麻煩,但是在mysql 版之後,由於引入了prepare語句,一切變得簡單了。例子如下 已驗證 drop procedure if exists newtable create procedure newtable in tname varchar 64 beginse...
mysql進在儲存過程中用select如何給變數賦值
用select.into語句。這個select語法把選定的列直接儲存到變數。因此,只有單一的行可以被取回。重要 sql變數名不能和列名一樣。如果select into這樣的sql語句包含乙個對列的參考,幷包含乙個與列相同名字的區域性變數,mysql當前把參考解釋為乙個變數的名字。例如,在下面的語句中...
mysql大資料量該怎麼儲存和維護
可以有兩種bai 方式,一種是du分表,另一種是分 mysql 大資料量該怎麼儲存和維護 照你的需求來看,bai可以有兩種du 方式,一種是分表,zhi另一種是分割槽 dao 首先是分內表,就像你自己 換資料庫,用nosql 資料庫。mysql的最大資料儲存量是多少 mysql的最大 資料儲存bai...