我有三种类型的产品
- Retail products (ID,product_categoryId,price,name)
- Courses (ID,course_categoryId,price,name,roomId)
- Events (ID,name,price,StartTime,EndTime)
所有类型都有自己的价格。我是否应该为所有提及父级的人创建一个表,或者我必须为每种类型创建单独的表?
请记住,用户可以购买多种类型。 (例如,她可以通过2个零售产品3个课程和一个活动)。因此,发票就是以这种方式创建的。
请帮助
答案 0 :(得分:1)
为什么不像这样创建你的表(TSQL)
CREATE TABLE [dbo].[ProductTypes] (
[Id] INT NOT NULL ,
[Description] NVARCHAR(MAX) NOT NULL
)
CREATE TABLE [dbo].[Products] (
[Id] INT NOT NULL IDENTITY(1) ,
[ProductTypeId] INT NOT NULL, -- FK to ProductTypes table
[Price] ...
)
CREATE TABLE [dbo].[OrderItems] (
[OrderId] INT NOT NULL ,
[ProductId] INT NOT NULL
)
... and so forth?