【问题标题】:how to avoid from insert duplicate values? [duplicate]如何避免插入重复值? [复制]
【发布时间】:2017-07-12 07:18:28
【问题描述】:

我有一个简单的项目,该项目将人员信息提供给数据库(sqlite) 现在我想避免插入重复值(按名称)我不能做什么? 谢谢各位

【问题讨论】:

  • 创建唯一键
  • 设置名称为主键?
  • 请在名称列上分配唯一键。
  • 如上所述,在第一步中创建唯一约束。下一个重要步骤是在应用代码中进行验证,以在插入之前告诉用户名称已经存在于数据库中。
  • 我发现它在制作这样的索引:“CREATE UNIQUE INDEX name_index ON Course(CourseName);”;

标签: java sql database sqlite


【解决方案1】:

只需将 UNIQUE 分配给名称列。但是我的建议永远不会在名称列上设置唯一,因为有很多机会为更多人使用相同的名称。将 UNIQUE 约束设置为另一列,如 ID、电子邮件、电话等。

【讨论】:

    【解决方案2】:

    您有两个选择,将名称添加为主键或在每次插入之前检查名称是否存在。

    SELECT count(*) FROM "table_name" WHERE name = "name"
    

    如果返回 > 0,则不进行插入。

    【讨论】:

    • 我有一个主键并且有很多名字
    猜你喜欢
    • 2019-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    相关资源
    最近更新 更多