Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 唯一地识别一个人的逻辑_Database_Database Design_Unique - Fatal编程技术网

Database 唯一地识别一个人的逻辑

Database 唯一地识别一个人的逻辑,database,database-design,unique,Database,Database Design,Unique,我正在开发一个医疗php应用程序,该应用程序将在国家级实现。 它将被多家医院使用,病历将集中,即每家医院将访问病历并将其添加到同一数据库中 我希望一个患者只有一份记录,没有任何重复。简单地说,没有一家医院可以再次为同一名患者输入第二个记录,但为了使其成为可能,我需要知道我们应该使用哪些标准,哪些标准在患者的整个生命周期中保持不变。我脑子里只有两个,即姓名和出生日期 还有什么其他的标准?我不想使用手机号码和电话号码等,而且婴儿不能拥有它。我需要的标准将有每个病人和独特的 请给我您的建议或任何其他更

我正在开发一个医疗php应用程序,该应用程序将在国家级实现。 它将被多家医院使用,病历将集中,即每家医院将访问病历并将其添加到同一数据库中

我希望一个患者只有一份记录,没有任何重复。简单地说,没有一家医院可以再次为同一名患者输入第二个记录,但为了使其成为可能,我需要知道我们应该使用哪些标准,哪些标准在患者的整个生命周期中保持不变。我脑子里只有两个,即姓名和出生日期

还有什么其他的标准?我不想使用手机号码和电话号码等,而且婴儿不能拥有它。我需要的标准将有每个病人和独特的


请给我您的建议或任何其他更好的方法来实现此功能?

您需要使用一些全国范围的ID,如护照ID或健康保险号码。

姓名、出生日期、血型、出生地等的组合。,可以尝试。

国家/地区的社会保险号码。

我会尝试一下,因为我参与了一些数据匹配和验证,虽然不是专门在医疗行业。您没有指定一个特定的国家,只是提到了亚洲,所以我将使用我的祖国澳大利亚的一个例子,因为我熟悉规则,我相信这同样适用于许多亚洲国家:

  • 我们有一个独特的医疗保险号码用于医疗保健,但它不是强制性的,而免费/折扣医疗意味着我预计99%以上的人会有一个你不能依赖的号码

  • 还有一个税务文件编号,同样不是强制性的,即使您 没有工作的人通常不会有工作

  • 你可能正在与非本地居民的外国人打交道

  • 驾驶执照当然不是获得医疗保健的强制性条件

  • “没有固定地址”是完全合法的。另外,有些人会为了得到治疗和重复用药等而撒谎,更不用说很多人经常搬家了

  • 在结婚/离婚的情况下,更改姓名是很常见的,除非这样做 出于非法目的,有人可以仅仅因为他们 我不喜欢他们的原创。更不用说人们用普通的替代物来代替各种各样的东西,比如吉姆和詹姆斯

  • 在大型数据集上,键入错误非常常见

简言之,我认为你所要求的“完美”方案是不可能的。您所能做的最好的事情就是应用权重规则来查找可能的重复项。例如,相同的姓名/出生日期/出生地是不太可能发生但可能发生的事件,因此向数据输入操作员显示一条警告:这可能是重复的,并让他们查看可能重复的详细信息。即使像驾驶执照号码这样应该唯一的东西也可能表明原始条目只是有数据输入错误,而不是新的副本


根据我的经验,最好的是一份报告,其中列出了可能的重复项,这些重复项必须由链上更高级别的人员审查,并为他们提供了一个合并重复项的简单选项。然后,您可以开始使用更模糊的正则表达式,这些表达式会抛出一些误报,当用户查看它们时,这些误报可能会被忽略。您还可以随着时间的推移对模型进行优化,以获得最佳匹配结果。

个人身份证号码、您的社会保障卡或护照上的号码,如果您可以使用其他现有数据源验证这些号码,那就太好了。这是我个人会问最终用户的问题,如果(可能是什么时候)在你不负责的情况下,它不能100%地工作。@cristi_b-它不适用于美国,因此亚洲国家没有社会保险号码,也不是每个人都有护照。最后,也没有可用的数据源。我们必须使用适用于每个年龄组和性别的标准,如姓名和出生日期,但我们不能有unique患者只有姓名和出生日期,所以我需要知道还有什么可以使用。客户应该注册并获得健康卡,注册应该经过人体验证程序,然后,aldo birrh认证在我的国家有副本,因为出生证号码是医院号码+出生日期。好的,谢谢你指出我将为sugge编辑我不能使用血型,因为不是每个患者都知道他/她的血型,但是的,出生地可以作为一个标准,但仍然不能保证每个患者都有一个独特的记录,尽管我会将其添加到列表中。不是像婴儿一样的每个患者都会有血型,我需要适用于每个人的标准