ホームページ >データベース >mysql チュートリアル >mysql-MySQL:为什么这样的小改动会造成存储过程错误呢?

mysql-MySQL:为什么这样的小改动会造成存储过程错误呢?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-06 09:33:061044ブラウズ

mysql

<code> DELIMITER $$                  USE mysql$$DROP PROCEDURE IF EXISTS demo$$CREATE PROCEDURE demo(_id INT, _content VARCHAR(64))    BEGIN                  SET @id = _id;    SET @content = _content;                                                                                          PREPARE stmt FROM "INSERT INTO blog (id, content) VALUES(?, ?)";    EXECUTE stmt USING @id, @content;    DEALLOCATE PREPARE stmt;END$$DELIMITER ;DELIMITER $$</code>

如果改写成如下就会报错:

<code> DELIMITER $$USE mysql$$DROP PROCEDURE IF EXISTS demo$$CREATE PROCEDURE demo(_id INT, _content VARCHAR(64))    BEGIN                  -- set @id = _id;    -- set @content = _content;    PREPARE stmt FROM "INSERT INTO blog (id, content) VALUES(?, ?)";    EXECUTE stmt USING _id, _content;    DEALLOCATE PREPARE stmt;END$$DELIMITER ;</code>
<code> 错误代码: 1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '_id, _content;    DEALLOCATE PREPARE stmt;END' at line 7</code>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。