Я разместил это на ServerFault, и мне сказали, что это будет лучшим местом для него.
У меня есть некоторый опыт работы в качестве разработчика, но я новичок в вопросах администрирования SQL и проектирования баз данных.
Я преобразую процесс заказа и цитирования моей компании из электронной таблицы Excel во что-то более надежное, используя приложение ASP.NET с SQL-сервером.
В настоящее время наша база данных запчастей является просто таблицей Excel. Многие наши продукты представляют собой стандартное оборудование от производителей, например, маршрутизаторы, серверы и т. Д. Мы в основном занимаемся программным обеспечением, поэтому устанавливаем наши приложения на оборудование, настраиваем сетевое оборудование и поставляем комплексное решение, которое устанавливается нашими санитары.
В моей схеме 5 таблиц
- CompanyProducts
- OEMProducts
- SupplierProducts
- Поставщики
- ОЙ
OEMProdcuts содержит информацию от производителя оборудования, такого как Cisco, для сетевого оборудования или Dell для серверного оборудования.
SupplierProducts содержит информацию о поставщиках, от которых мы получаем товары OEM (поскольку многие реселлеры используют OEM)
companyProducts содержит идентификатор продукта, специфичный для нашей компании.
Вот снимок из SQL Server Management Studio:
альтернативный текст http://i102.photobucket.com/albums/m108/ArkhamFreak/schema2.jpg
Мой вопрос:
Как лучше всего настроить первичные ключи для этой простой схемы? Следует ли использовать поле автоинкремента в качестве GUID, как показано на схеме, или OEMProductID для первичного ключа для ссылки во всех таблицах?
Поставщики товаров поставщикам и OEM-производители товаров OEM очевидны для меня, но в остальных отношениях я не уверен. Я немного обеспокоен тем, что если мне придется ссылаться на OEMProducts по неизвестному автоматически сгенерированному идентификатору, когда я добавляю данные в таблицу, ссылающуюся на него. Поскольку у нас есть несколько поставщиков одного и того же оборудования, я не уверен, как смоделировать эти отношения.
Спасибо за ваше время.