간단한 예 : 고객 테이블이 있습니다.
create table Customers (
id integer,
constraint CustomersPK primary key (id)
)
데이터베이스의 다른 모든 데이터는에 연결되어야합니다. Customer
예를 들면 Orders
다음과 같습니다.
create table Orders (
id integer,
customer integer,
constraint OrdersPK primary key (customer, id),
constraint OrdersFKCustomers foreign key (customer) references Customers (id)
)
이제 연결되는 테이블이 있다고 가정하십시오 Orders
.
create table Items (
id integer,
customer integer,
order integer,
constraint ItemsPK primary key (customer, id),
constraint ItemsFKOrders foreign key (customer, order) references Orders (customer, id)
)
나는로부터 별도의 외부 키를 추가해야 Items
하는 Customers
?
...
constraint ItemsFKCustomers foreign key (customer) references Customers (id)
사진 대신 : 점선 / FK를 추가해야합니까?
편집 : 기본 키 정의를 테이블에 추가했습니다. 위에서 언급 한 요점을 다시 반복하고 싶습니다. 데이터베이스는 기본적으로 정확성 / 보안 수단으로 고객이 보관합니다. 따라서 모든 기본 키에는 customer
ID가 포함 됩니다.