我想在发生重复记录时返回错误消息,groupName是组表中的唯一字段。
我是这样制作的,如何使用mysql-get-diagnostics处理错误,因为我正在处理的服务器是版本5.0.77-log。
DELIMITER //
CREATE PROCEDURE addNewGroup(IN groupName varchar(128), IN addedBy INT,OUT message varchar(128) )
BEGIN
insert IGNORE into `group`( `group_name`,`Date_time_ added`,`added_by`) values (groupName ,CURRENT_TIMESTAMP(),addedBy) ;
END //
DELIMITER ;
我想在发生重复时返回错误消息吗?
答案 0 :(得分:0)
尝试此方法 -
BEGIN
INSERT IGNORE INTO table VALUES...;
IF ROW_COUNT() = 0 THEN
SET message = 'duplicate records occur';
END IF;
END
ROW_COUNT()函数返回最后一个语句的插入行数。
在MySQL 5.5中。您可以使用SIGNAL语句生成警告。