Альтернатива отношениям многих и многих

Скажем, у меня есть две таблицы – книга и автор. У книги может быть много авторов, и у автора может быть много книг, а это значит, что у них много отношений, и мне понадобится третья таблица для ее реализации.

Я действительно хочу этого избежать, поскольку я новичок, и это усложняет для меня запросы.

Поэтому мой вопрос : какой был бы лучший способ реализации такого типа отношений, исключая многих-ко-многим?

Я думал просто поместить внешний ключ в каждый стол, поэтому у меня есть authoridFK в таблице моих книг и bookIdFK в таблице моих авторов. Но я не уверен, каким будет тип отношений, будет ли он меня правильно и как он будет выглядеть на ERD?

Может кто-нибудь прояснить их мне?

«Лучший», и самый стандартный способ – использовать третью таблицу для поддержания отношений.

Что касается сложности запросов, вы можете либо изучить использование JOIN в своих запросах, либо получить ORM, который обрабатывает эти типы отношений для вас.

Пример запроса соединения для данного контекста, который вернет список всех авторов, и все книги, которые они внесли, выглядят следующим образом:

 select a.AuthorName, b.BookName from author a join AuthorBookMapping m on m.AuthorID = a.AuthorID join Book b on m.BookID = b.BookID 
  • Отладка в SQL Management Studio 2012
  • Столбец идентификатора пропускает некоторые значения при добавлении новой строки
  • Может ли файл удалить журнал проблемы?
  • Показывать только выходные данные с последней даты с использованием SSMS
  • Таблица SQL Server не обновляется
  • Запуск SSMS для SQL Server 2012 с несколькими экземплярами с различной сортировкой
  • Разработчик запросов SQL Server в приложении C #
  • Сортировка в представлении сведений об объекте объекта SSMS
  • Получить список серверов баз данных с C #
  • Несоответствие пароля между SQL Server Management Studio и файлом конфигурации
  • как создать скрипт вставки данных из таблиц #temp?
  • Interesting Posts

    Почему мы вообще не используем тип данных SQL_VARIANT, хотя он поддерживает все виды данных?

    Создание индексированного представления с помощью self join

    Должен ли я устанавливать ARITHABORT в SQL Server 2014

    Каковы различные возможности хранения большого количества файлов в базе данных SQL Server 2008?

    цикл через каждый столбец таблицы

    Как использовать точку / период в имени столбца с FOR JSON PATH без создания вложенного объекта?

    Несколько сумм с разными предложениями в том же наборе результатов запроса

    Статистика запросов SQL Server 2005

    Фильтровать строки по количеству двух значений столбца

    Почему SQL Server не может изменять представление в хранимой процедуре?

    Не удается найти файл, указанный при удалении базы данных LocalDb, если .mdf удален

    UNIQUE CONSTRAINT в столбце из внешней таблицы в SQL Server 2008

    Замедление и ошибки сайта после перехода с .NET 2 на .NET 4

    Как получить ключ от предыдущих упорядоченных строк с неизвестным смещением?

    Запрос SQL SERVER, Взаимные строки в заданном ID

    Давайте будем гением компьютера.