MySQL中limit使用動態參數的解決方法(拼接SQL字符串語句來執行SQL)


官方好像說過limit已經在5.6版本上支持了動態參數,但是測試時依然還是不行。

那么要解決limit動態參數唯一能做的就是使用字符串SQL拼接的形式,然后再進行執行。

一般有以下方式解決:

1、存儲過程拼接

2、函數拼接

3、視圖里拼接

4、當前查詢的session中使用

其實上面都是同一個意思,就是使用一個變量存取這個SQL,然后再執行這個變量。

樣例:

set @stmt = concat('select * from ',table_name,' limit ?,?');
prepare s1 from @stmt;
set @s1 = page_begin;
set @s2 = page_end;
execute s1 using @s1,@s2;
deallocate prepare s1;

 

參考:

http://blog.csdn.net/hellolongbin/article/details/1999817

http://blog.csdn.net/yongsheng0550/article/details/6217917

http://blog.csdn.net/xinyuan_java/article/details/50056741


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM