Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2014, 19:38   #1
marwell.
Пользователь
 
Регистрация: 05.12.2012
Сообщений: 63
Вопрос логика добавления статьи пользователем

доброго времени суток
прошу совета в построении схемы работы приложения. суть такова: имеется бд, в ней 3 таблицы: users(id, login, pass), public_journal(id, name, year, journal), user_to_public(id_user, id_public). Первая - таблица с данными пользователей, вторая - таблица статей, третья - таблица для соответствия автор-статья. Дело в том, что у одной статьи может быть несколько авторов. Например, у "статья1" пусть 2 автора - Иванов и Петров. Иванов зарегистрировался, и хочет добавить эту статью. Вот с этого момента непонятно, как построить логику дальнейших действий, чтобы Иванов мог указать, что у статьи еще один автор - Петров(который может быть сейчас пока не зарегистрирован) и в итоге в таблицу user_to_public вставить две записи (id Иванова, id статьи1) и (id Петрова, id статьи1).
P.S. если в таком виде никак, то наверное придется взять допущение, что по умолчанию все возможные авторы уже зарегистрированы. Тогда Иванов просто жмет кнопку указать соавторов, и в таблице пользователей выбирает Петрова.
marwell. вне форума Ответить с цитированием
Старый 19.04.2014, 20:34   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Тут обычное отношение один-ко-многим.
Если Петров не зарегистрирован, то Иванову придется его регистрировать, иначе придется позволить фиксировать статьи на анонимов, а это как я понимаю в твоей задаче неприемлемо.
В общем твое допущение в данном случае упростит задачу. Не гонись за универсальностью - получишь крупные дыры в системе.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.04.2014, 21:02   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Тут обычное отношение один-ко-многим.
Не-а. Многие к многим. У одного автора несколько статей, точно так же как у одной статьи куча авторов. Нужна третья таблица с внешними ключами как к таблице авторов, так и к таблице статей для организации такого отношения
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.04.2014, 21:52   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
У одного автора несколько статей, точно так же как у одной статьи куча авторов.
А-а-а... Ну да. Ты прав, томодачи
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.04.2014, 22:20   #5
marwell.
Пользователь
 
Регистрация: 05.12.2012
Сообщений: 63
По умолчанию

спасибо, видимо лучше всего будет так и поступить
marwell. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Математическая логика (Элементы теории множеств, Логика и исчисление высказываний) sash_ok.83 Фриланс 0 12.06.2012 20:43
Посоветуйте статьи Juffin Общие вопросы по программированию, компьютерный форум 4 30.04.2012 12:01
Логика предикатов (мат логика 2 задачи) Deathcube Помощь студентам 0 27.02.2012 18:28
Статьи Sazary Общие вопросы C/C++ 0 16.08.2009 01:37