Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Pytanie dotyczące projektowania bazy danych - Kategorie / Podkategorie

Twój projekt jest odpowiedni. Jestem specjalistą od baz danych, który został programistą, więc rozumiem skłonność do umieszczania kategorii i podkategorii w jednej tabeli, ale KISS nigdy się nie pomyli.

O ile ekstremalna wydajność lub nieskończona hierarchia nie są wymagane (zgaduję, że nie), możesz iść.

Jeśli możliwość powiązania wielu podkategorii z produktem jest wymogiem, zgodnie z @Mikaelem, potrzebujesz konfiguracji takiej jak ta, która tworzy relację wiele-do-wielu za pomocą tabeli łączenia/przecinania, Product_SubCategory:

CREATE TABLE Product (ProductID int, Description nvarchar(100))
CREATE TABLE Product_SubCategory (ProductID int, SubCategoryID int)
CREATE TABLE SubCategory (SubCategoryID int, CategoryID int, Description nvarchar(100))
CREATE TABLE Category (CategoryID int, Description nvarchar(100))

Mam nadzieję, że to pomoże...

Eric Tarasoff



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak napisać funkcję agregującą kwantyl?

  2. Importuj wybrane kolumny z plików CSV do tabeli SQL Server

  3. ADO.Net SQLCommand.ExecuteReader() spowalnia lub zawiesza się

  4. Jak zignorować parametr w procedurze składowanej, jeśli jego wartość to null?

  5. Czy można usunąć z wielu tabel w tej samej instrukcji SQL?