【问题标题】:Preventing duplicate applications/profiles of same person?防止同一个人的重复应用程序/个人资料?
【发布时间】:2017-11-24 13:19:22
【问题描述】:

我有一个表格,它接受用户姓名、电子邮件、罪号、位置等数据。但我遇到的问题是我们的数据输入人员之一创建了同一个人的重复数据,但数据略有更改,例如作为电话号码。我知道我可以把主键放在罪号上,因为它是独一无二的,但有些人在填写申请时没有或带进来。而且我的每一行都有唯一的 ID,这没有问题。那么我可以实施哪些技术来防止这种情况发生呢?

或者我应该检查匹配的数据并给出警告,例如“警告:可能是重复条目!匹配数据。'名字','姓氏','位置'。

如果我的问题没有意义,请向我询问您可能需要什么来帮助我,因为我自己也很困惑。

【问题讨论】:

  • 使用唯一键来强制数据完整性。
  • @Phylogenesis 是的,我可以输入唯一的密钥,但大多数人不需要输入电子邮件、犯罪号码等。我们曾经有一些同名的人住在同一栋楼里,这很少见,但确实如此上来。

标签: mysql sql forms web-applications


【解决方案1】:

您可以创建 UNIQUE INDEXES 而不是键,因为它允许在一行中有多个 NULL 值,但我认为检查代码上的重复项也是一个好主意,因为您可以制作更有用的错误消息,甚至要求确认案例你只是认为它可能是重复的。

【讨论】:

    【解决方案2】:

    您应该在表单中创建一个验证,以检查值是否与您数据库中已有的行匹配。正如您所说,它可能包含名字、姓氏、电子邮件和位置字段。

    由于附近可能有同名的人居住在附近,因此您可以将“位置”字段范围扩展为更具体,例如完整地址或类似内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-13
      • 1970-01-01
      • 2011-09-30
      • 1970-01-01
      • 2017-02-28
      • 2015-12-11
      • 1970-01-01
      相关资源
      最近更新 更多