【问题标题】:Adding unique data to a sql table将唯一数据添加到 sql 表
【发布时间】:2013-04-08 11:25:23
【问题描述】:

我正在学习 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 ;

所以有人知道我做错了什么吗?

【问题讨论】:

标签: mysql sql


【解决方案1】:

VARCHAR 不固定,可以使用唯一索引

更多关于http://www.w3schools.com/sql/sql_unique.asp

你也可以使用 INSERT 忽略

http://dev.mysql.com/doc/refman/5.5/en/insert.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-17
    • 2011-04-26
    • 1970-01-01
    • 2012-11-09
    相关资源
    最近更新 更多