Webサイトを作成していますが、データベースにランダムな数のデータを保存する必要があります。
例:ユーザーjohnは、ジャックが3つ持つことができる1つの電話番号を持っている場合があります。
ユーザーごとに無限の数の値を格納できる必要があります。
私はどこでもこれを行う方法を見つけることができませんでした、あなたが私を助けることができることを願っています! :)
私はリレーショナルデータベースの初心者です。
電話番号用に別のテーブルを作成します(つまり、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`
1対多の関係テーブルを作成する必要があると思います。
あなたはここでより多くの情報を見ることができます: http://dev.mysql.com/doc/workbench/en/wb-relationship-tools.html