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
C# 数据库中的Id使用什么数据类型?_C#_Database_Ms Access - Fatal编程技术网

C# 数据库中的Id使用什么数据类型?

C# 数据库中的Id使用什么数据类型?,c#,database,ms-access,C#,Database,Ms Access,我正在为C#winform应用程序使用Access数据库。我想创建存储患者详细信息的软件。我已为每个患者分配了一个患者Id,患者Id为“自动编号”数据类型,因此它将自动递增。我的问题是,当同一个患者再次出现时,会自动生成新的患者Id以存储其新的当前数据,但对于同一个患者,我只需要一个Id。使用一些唯一的数据作为患者表中的字段(如社会保险),当患者出现时,查找此唯一编号,确定他是新患者还是返回患者。这是一个简单的SELECT查询,类似于: "SELECT patient_Id FROM tPati

我正在为C#winform应用程序使用Access数据库。我想创建存储患者详细信息的软件。我已为每个患者分配了一个患者Id,患者Id为“自动编号”数据类型,因此它将自动递增。我的问题是,当同一个患者再次出现时,会自动生成新的患者Id以存储其新的当前数据,但对于同一个患者,我只需要一个Id。

使用一些唯一的数据作为患者表中的字段(如社会保险),当患者出现时,查找此唯一编号,确定他是新患者还是返回患者。这是一个简单的SELECT查询,类似于:

"SELECT patient_Id FROM tPatients WHERE SSN=@sNum"

嗯。。。如果是重复患者,为什么要为该患者插入新记录?注册过程的一部分不应该是查看病历是否已经存在,然后重新使用该id吗
if(patient_exists()){get_existing_id();}else{get_new_id()}
我的客户要求软件在患者来时存储所有数据(他需要这些详细信息,因为这有助于他查看患者健康的进展)我很感激您的解决方案,但如果我检索现有患者PatientId并存储患者数据,则该数据将添加到单行中,如果同一患者再次出现,则我的客户检索前2个数据并继续工作将变得不灵活(分析数据)。那么您的表设计完全错误。您应该至少有两个表:
患者
就诊
。创建新患者时,您只需在
患者
中插入新记录,每次他们进门时,您只需在
就诊
中插入新记录。是的,我认为这可能是我的最佳解决方案:)