2015-09-16 3 views
2

Я использую базу данных PostgreSQL 9.3 для создания небольшой базы данных. Один пользователь может быть частью разных групп.Несколько записей в PostgreSQL

Есть 2 таблицы в базе данных: пользователя и группы Тип данных всех столбцов текста

Каждая строка в пользователя является одним пользователем, каждая строка в группе является одной группой.
Один столбец пользователя должен быть группы

Как могу я настроить групп -column добавить несколько записей из группы для одного пользователя

ответ

3

То, что вы описываете, является стандартным для многих -нормальные отношения в реляционной базе данных.

Вы решить эту проблему путем создания таблицы отображения между пользователями и группами:

Если у вас есть что-то вроде этого в настоящее время:

create table users (id integer primary key, user_name text); 
create table groups (id integer primary key, group_name text); 

Таблица отображения будет выглядеть примерно так:

create table user_groups 
(
    user_id not null references users, 
    group_id not null references groups, 
    primary key (user_id, group_id) 
); 

Используя первичный ключ (user_id, group_id), вы убедитесь, что пользователь может быть сопоставлен только одной и той же группе один раз.

Смежные вопросы