假设有员工数据库的场景。
我必须存储员工的所有详细信息,如empid,姓名,名称,地址,联系电话,emailid。
如果员工拥有多个地址和多个联系号码,而不是如何设计数据库。
请详细说明设计相同内容。
谢谢。
答案 0 :(得分:0)
CREATE TABLE `employee` (
`emp_id` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(20),
`designation` VARCHAR(20),
`email` VARCHAR(30),
PRIMARY KEY (`emp_id`)
);
CREATE TABLE `adress` (
`addr_id` BIGINT NOT NULL AUTO_INCREMENT,
`emp_id` BIGINT,
`detail` TEXT,
PRIMARY KEY (`addr_id`)
);
CREATE TABLE `contact_number` (
`ct_num_id` BIGINT NOT NULL AUTO_INCREMENT,
`emp_id` BIGINT,
`number` VARCHAR(20),
PRIMARY KEY (`ct_num_id`)
);
ALTER TABLE `adress` ADD CONSTRAINT `adress_fk1`
FOREIGN KEY (`emp_id`) REFERENCES employee(`emp_id`);
ALTER TABLE `contact_number` ADD CONSTRAINT `contact_number_fk1`
FOREIGN KEY (`emp_id`) REFERENCES employee(`emp_id`);
您可以像这样使用表格设计。在源代码中,您必须管理哪些地址和联系人号码属于员工。