웹 사이트를 만들고있어 데이터베이스에 임의의 수의 데이터를 저장해야합니다.SQL 데이터베이스에 일대 다 관계를 저장하는 방법은 무엇입니까? (MySQL)
예 : 사용자 존은 잭이 내가 그렇게 사용자 당 값의 무한한 번호를 저장 할 수 있어야합니다 3.
가질 수있는 하나 개의 전화 번호가있을 수 있습니다.
어디서나이 작업을 수행하는 방법을 찾을 수 없으므로 도와주세요! :)
저는 관계형 데이터베이스에서 초보자입니다.
웹 사이트를 만들고있어 데이터베이스에 임의의 수의 데이터를 저장해야합니다.SQL 데이터베이스에 일대 다 관계를 저장하는 방법은 무엇입니까? (MySQL)
예 : 사용자 존은 잭이 내가 그렇게 사용자 당 값의 무한한 번호를 저장 할 수 있어야합니다 3.
가질 수있는 하나 개의 전화 번호가있을 수 있습니다.
어디서나이 작업을 수행하는 방법을 찾을 수 없으므로 도와주세요! :)
저는 관계형 데이터베이스에서 초보자입니다.
전화 번호에 대해 별도의 표를 만듭니다 (예 : 1 : M 관계).
create table `users` (
`id` int unsigned not null auto_increment,
`name` varchar(100) not null,
primary key(`id`)
);
create table `phone_numbers` (
`id` int unsigned not null auto_increment,
`user_id` int unsigned not null,
`phone_number` varchar(25) not null,
index pn_user_index(`user_id`),
foreign key (`user_id`) references users(`id`) on delete cascade,
primary key(`id`)
);
간단한 결합으로 쉽게 사용자 전화 번호를 얻을 수 있습니다.
select
pn.`phone_number`
from
`users` as u,
`phone_numbers` as pn
where
u.`name`='John'
and
pn.`user_id`=u.`id`
일대 다 관계 테이블을 만들어야한다고 생각합니다.
자세한 내용은 여기를 참조하십시오. http://dev.mysql.com/doc/workbench/en/wb-relationship-tools.html
이것은 일대 다 관계에 불과합니다. 예를 들어 사용자는 많은 전화 번호를 가질 수 있습니다. 이 내용은 어딘가에 데이터베이스 개념 자습서에서 다룹니다. – Arran