2012-07-14 66 views
0

在数据库表我:耐心表,表PatientBasicInfomation,PatientImageFindings表.. 我已经多的问题依靠这个设计..(注意,我在初学DB) 1)如果我有为每个病人一个ID ..所以根据DB概念PatientBasicInfomation,PatientImageFindings应该有这个键(ID)作为外键?!插入与MySQL的条件

2)在患者表中,我应该通过使用他们的私钥来引用PatientBasicInfomation,PatientImageFindings,以便它们将作为外键在Patient Table中?我想正确的...

3)现在我的大问题:我想插入PatientImageFindings表记录,但条件ID +日期(其中日期是PatientImageFindings表中的重要字段,我不知道是否我应该把它作为一个私钥或不..),我怎么能做到这一点在我的java类插入语句..(插入条件下)

+0

的方式......我想,在检查身份证的条件率先拿到指定的病人,然后检查PatientImageFindigins表上的日期是这个数据已经存在不这样做只是插入数据更新...做别的插入.. – BDeveloper 2012-07-14 07:59:46

回答

0

你想要做的是在多列添加UNIQUE约束。

这个问题提供了一个答案来做到这一点:
How do I specify unique constraint for multiple columns in MySQL?

alter table votes add unique index(user, email, address); 

除非你有另外一个原因,你应该在数据库级别执行本和治疗例外,因为它们产生后试图INSERT秒。

+0

我无法理解答案..为什么我需要一个唯一的密钥?!...我所需要的仅仅是一个检查语句...而且如果患者表只保存外键(在我的java代码这是一个有很多对象的类:PatientImageFindings的obj,PatientBasicInformation的obj等等) – BDeveloper 2012-07-14 09:02:28