【发布时间】:2014-03-27 04:04:09
【问题描述】:
所以我需要创建一个名为 AddComment 的存储过程,它会在我的 Comments 表中添加一条评论,然后如果该评论者名称不存在,则在 Commenters 表中添加一个条目。
DELIMITER //
CREATE PROCEDURE AddComment(Name VARCHAR(60), Title VARCHAR(60), Comments VARCHAR(60))
BEGIN
INSERT INTO Comments(Name, Title, Comments)
VALUES (Name, Title, Comments);
DECLARE name_count INT;
SELECT COUNT(Name) INTO name_count
FROM Commenters
WHERE Name = Name;
IF name_count = 0
THEN INSERT INTO Commenters(Name)
VAlUES(Name);
ELSEIF name_count = 1
THEN INSERT IGNORE Commenters(Name)
VALUES(Name);
END IF;
END;
//
ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册
r 'DECLARE name_count INT;
附近使用的正确语法
SELECT COUNT(Name) INTO name_count
来自评论者
^ 是我得到的错误。我一直在调整我的代码试图弄清楚,但没有任何效果。
【问题讨论】:
标签: mysql stored-procedures if-statement count