MySQL的参照完整性(多表的设计):定义外键
注意:类和表结构的关系;对象和记录的关系(帮助学习ORM:Hibernate、MyBatis)
ORM:Object Relation Mapping(Java面向对象 DB关系型数据库 映射)
第一:(非常多)一对多
create table CUSTOMERS(
ID int primarykey,
NAMEvarchar(100),
ADDRESSvarchar(100)
);
create table ORDERS(
ID int primarykey,
ORDER_NUMvarchar(100),
AMOUNTfloat(10,2),
CUSTOMER_ID int,
constraint CUSTOMER_ID_FK foreign key(CUSTOMER_ID) references CUSTOMERS(id)
);
注意:
表结构:Java类定义
表中的记录:Java对象
表间的关系:Java对象间的关系
第二:多对多(比较常见)
create table TEACHERS(
ID int primarykey,
NAME varchar(100),
SALARYfloat(10,2)
);
create table STUDENTS(
ID int primarykey,
NAMEvarchar(100),
GRADE char(1)
);
create table TEACHERS_STUDENTS(
T_ID int,
S_ID int,
primarykey(T_ID,S_ID),
constraint T_ID_FK foreign key (T_ID)references TEACHERS(id),
constraint S_ID_FK foreign key (S_ID)references STUDENTS(id)
);
第三种:一对一(很少用到。实际开发根本不用)
数据库设计:ERWin