我正在学习sql数据库。我正在使用mysql。
我设计了表格和查询。我现在正在编写将内容放入数据库的代码。
当我有一个文本字段时,我无法弄清楚如何确保记录是唯一的。我试图将不是 pk(主键)的记录部分标记为唯一的,但是当它是文本时,它抱怨它不是固定长度。然后我在存储过程中尝试了条件的想法,但无法让它工作。
DELIMITER $$
DROP PROCEDURE IF EXISTS `experiment1`.`add_zzzz`$$
CREATE PROCEDURE `experiment1`.`add_zzzz` (IN v INT, IN n TEXT)
BEGIN
IF EXISTS (
SELECT value, name
FROM zzzz
WHERE value=v AND name=n
)
THEN
ELSE
INSERT INTO zzzz(value,name)
VALUES v,n;
END IF;
END$$
DELIMITER ;
所以有人知道我做错了什么吗?