mysql的limit offset後面不能跟變量 只能硬編碼數字的問題

今天在寫mysql存儲過程的時候遇到一問題

mysql版本呢:5.1.40

不知道高一點的版本有無此問題

如果高版本不存在此問題親跳過

 

sql如下:

SELECT pid,NAMES INTO _dp_id,_dp_names FROM department LIMIT 1 OFFSET _dp_count;


_dp_count是我聲明的一變量

 

執行的時候報錯...

 

 

錯誤碼: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '_dp_count;

 

原來 mysql的 limit 和 offset後面都不能跟變量

 

解決方法是用 CONCAT 把sql拼起來

 

然後PREPARE 再EXECUTE 就OK了 

 

 

 

我試了postgreSQL9.0.10 不存在此問題

 

 

 

不知道其他數據庫會有此問題不

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章