2017-01-25 24 views
0

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

По существу, таблицы (или лица), что я пришел с следующие:

Customer, 
Product, 
Order, 
orderLine, 
Book, 
Author, 
Publisher 

Проще говоря, мне нужно настроить это так, что я могу отслеживать обе книги и другие некнижных элементы из продажи. Проблема, с которой я сталкиваюсь в этом, заключается в том, что когда я пытался просто иметь одну таблицу продуктов, я столкнулся с проблемой, когда в книгах есть куча атрибутов, которые другие элементы (например, элементы хлебобулочных изделий). Если бы я ставил книги с другими предметами, тогда было бы много пустых ячеек, где нет автора/издателя/жанра. Из того, чему научил меня мой учебник, для таблицы orderDetail-типа требуется составная таблица, в которой объединились номер порядка и номер продукта. Но здесь мне нужно каким-то образом объединить два отдельных атрибута KEY (для книг и других предметов) в одну таблицу заказов или какой-либо другой метод. Это меня особенно сбивает с толку, так как некоторые клиенты могут купить комбинацию книг других предметов в одном порядке, или они могут покупать только один тип вещей. Я думал, что ISBN будет отличным ключом идентификатора для таблицы книг. Какую конфигурацию мне нужно будет отслеживать, например, такие заказы?

ответ

1

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

+0

Будет ли это позволять мне запускать разные запросы о продажах в месяц автор, издатель и т. д.? –

+0

Да, вы можете получить результаты на автора за каждый период времени. – kiran