我的用戶表結構保存多層次模型和他的ADRESS細節如下問題在誼
CREATE TABLE tbl_users (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
loginname varchar(128) NOT NULL,
enabled enum("True","False"),
approved enum("True","False"),
password varchar(128) NOT NULL,
email varchar(128) NOT NULL,
role_id int(20) NOT NULL DEFAULT '2',
name varchar(70) NOT NULL,
co_type enum("S/O","D/O","W/O") DEFAULT "S/O",
co_name varchar(70),
gender enum("MALE","FEMALE","OTHER") DEFAULT "MALE",
dob date DEFAULT NULL,
maritalstatus enum("SINGLE","MARRIED","DIVORCED","WIDOWER") DEFAULT "MARRIED",
occupation varchar(100) DEFAULT NULL,
occupationtype_id int(20) DEFAULT NULL,
occupationindustry_id int(20) DEFAULT NULL,
contact_id bigint(20) unsigned DEFAULT NULL,
signupreason varchar(500),
PRIMARY KEY (id),
UNIQUE KEY loginname (loginname),
UNIQUE KEY email (email),
FOREIGN KEY (role_id) REFERENCES tbl_roles (id),
FOREIGN KEY (occupationtype_id) REFERENCES tbl_occupationtypes (id),
FOREIGN KEY (occupationindustry_id) REFERENCES tbl_occupationindustries (id),
FOREIGN KEY (contact_id) REFERENCES tbl_contacts (id)
) ENGINE=InnoDB;
CREATE TABLE tbl_contacts (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
contact_type enum("cres","pres","coff"),
address varchar(300) DEFAULT NULL,
landmark varchar(100) DEFAULT NULL,
district_id int(11) DEFAULT NULL,
city_id int(20) DEFAULT NULL,
state_id int(20) DEFAULT NULL,
pin_id bigint(20) unsigned DEFAULT NULL,
area_id bigint(20) unsigned DEFAULT NULL,
po_id bigint(20) unsigned DEFAULT NULL,
phone1 varchar(20) DEFAULT NULL,
phone2 varchar(20) DEFAULT NULL,
mobile1 varchar(20) DEFAULT NULL,
mobile2 varchar(20) DEFAULT NULL,
PRIMARY KEY (id),
FOREIGN KEY (district_id) REFERENCES tbl_districts (id),
FOREIGN KEY (city_id) REFERENCES tbl_cities (id),
FOREIGN KEY (state_id) REFERENCES tbl_states (id)
) ENGINE=InnoDB;
CREATE TABLE tbl_states (
id int(20) NOT NULL AUTO_INCREMENT,
name varchar(70) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB;
CREATE TABLE tbl_districts (
id int(20) NOT NULL AUTO_INCREMENT,
name varchar(70) DEFAULT NULL,
state_id int(20) DEFAULT NULL,
PRIMARY KEY (id),
FOREIGN KEY (state_id) REFERENCES tbl_states (id)
) ENGINE=InnoDB;
CREATE TABLE tbl_cities (
id int(20) NOT NULL AUTO_INCREMENT,
name varchar(70) DEFAULT NULL,
district_id int(20) DEFAULT NULL,
state_id int(20) DEFAULT NULL,
PRIMARY KEY (id),
FOREIGN KEY (district_id) REFERENCES tbl_districts (id),
FOREIGN KEY (state_id) REFERENCES tbl_states (id)
) ENGINE=InnoDB;
的關係如下 用戶有多個聯繫人即永久地址,現住址,辦公地址。 每個聯繫人都有州和市。
用戶 - >非接觸>這樣
狀態如何保存這種結構的模型一氣呵成。
請提供答覆儘快