带语句的MySQL存储过程

时间:2012-10-02 08:37:21

标签: mysql sql performance stored-procedures

我想知道,一般,性能比较执行执行语句为

的语句的存储过程
BEGIN

    DECLARE query VARCHAR(5000);
    SET @query = " <SQL CODE>";

    PREPARE stmt1 FROM @query;
    EXECUTE stmt1;
    DEALLOCATE PREPARE stmt1;

END

或直接执行AS

BEGIN

    <SQL CODE>;

END

在我的情况下我必须使用第一种情况,因为我想设置一个输入参数来设置自定义LIMIT。我想知道一般来说是否会出现性能下降。

MySQL信息

  • protocol_version 10
  • 版本5.0.95
  • version_bdb Sleepycat软件:Berkeley DB 4.1.24 :( 2011年12月16日)
  • version_comment来源
  • 发布版本_compile_machine x86_64
  • version_compile_os redhat-linux-gnu

0 个答案:

没有答案