我正在设计一个应用程序,允许儿童保育员/保姆找到要照顾的婴儿和父母找到照顾他们孩子的儿童保育员/保姆。
我想要一个单独的ACCOUNT
数据库表,供家长和儿童看护人员使用。
然而,父母账户和儿童看护账户之间存在一些细微的差异,即。
儿童保育员可以将课程/简历附加到他们的帐户上(由RESUME
数据库表具体化)
childminder帐户由childminder状态(保姆、保姆等)进一步细化(由CHILDMINDER_STATUS
数据库表具体化)。儿童保育员可以有一个或多个“儿童保育员状态”。
我不确定ACCOUNT
,RESUME
和CHILDMINDER_STATUS
之间的关系应该是什么。。。
我用的是MySQL服务器。
编辑:
我忘了提到,属于儿童保育员的ACCOUNT
只有零个或多个ADVERTISEMENT
属于儿童保育员。属于父母的ACCOUNTs
和他们的ADVERTISEMENTs
也是一样的。
最佳答案
这行得通-能回答你的问题吗?其他的桌子也会跟在后面。
create table account (
id int unsigned auto_increment PRIMARY KEY,
fname varchar(100),
lname varchar(100),
type enum('parent','childminder')
-- etc - add other fields needed for both parents and childminders
) ENGINE=InnoDB;
create table resume (
id int unsigned auto_increment PRIMARY KEY,
account_id int unsigned,
file_spec varchar(100),
-- other fields as necessary
CONSTRAINT `resume_account_id_fk` FOREIGN KEY (`account_id`) REFERENCES `account` (`id`)
) ENGINE=InnoDB;
create table childminder_status (
id int unsigned auto_increment PRIMARY KEY,
account_id int unsigned,
status_description varchar(100),
-- other fields as necessary
CONSTRAINT `childminder_status_account_id_fk` FOREIGN KEY (`account_id`) REFERENCES `account` (`id`)
) ENGINE=InnoDB;
关于mysql - 数据建模,约束和模型问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9582052/