2012-03-15 3 views
0

안녕하세요 저는 데이터베이스를 디자인 중이며 지금까지 가지고있는 것에 대한 의견을 보내고 싶습니다. 데이터베이스 관계 및 정규화에 대한 경험이 거의 없으므로 나와 함께 맨발로 가십시오.다중 색상 제품 용 데이터베이스 스키마

다음은 요구 사항입니다. 각 제품에는 여러 가지 색상이 있습니다. 각 제품은 특정 카테고리에 속해야합니다. 각 카테고리에는 하위 카테고리가있을 수 있습니다.

예 관계는 여기 내 데이터베이스 디자인은 지금까지입니다

Eyes[Cat] 
    EyeProduct[Product] 
     Color1[color] 
     ... 
     ColorN[color] 

Lips[Cat] 
    Lipgloss[Subcat] 
     CoolLipgloss[Product] 
      Color1[color] 
      ... 
      ColorN[color] 

것 :

Categories 
-id  (pk) 
-subcat_id (fk) 
-name 
-description 
-active  (boolean) 

Sub Category 
-id   (pk) 
-product_id  (fk) 
-name 
-description 


Products 
-id  (pk) 
-name 
-price 
-weight 
-descritpion 
-ingredients 
-product_img 
-active  (boolean) 

SKU 
-sku (pk) 
-product_id  (fk) 
-name 
-image_small 
-image_med 
-image_Lrg 
-active  (boolean) 

이미지 테이블을 구현하는 것이 좋습니다 것입니다. 이 표는 각 SKU (색상) 및 추가 제품 이미지에 사용 된 모든 이미지에 대한 참조를 보유합니다. 나는 각 sku 엔트리가 하나 이상의 그림을 가질 수 있기 때문에 더 이해가된다고 생각한다. 모든 입력을 환영합니다.

답변

0

좋아요. 관계에 관한 몇 가지 메모 (fk)는 변경해야한다고 생각합니다.

Categories 
-id  (pk) 
-name 
-description 
-active  (boolean) 

Sub Category 
-id   (pk) 
-category_id  (fk) 
-name 
-description 


Products 
-id  (pk) 
-subcategory_id  (fk) 
-name 
-price 
-weight 
-descritpion 
-ingredients 
-product_img 
-active  (boolean) 

SKU 
-sku (pk) 
-product_id  (fk) 
-name 
-image_small 
-image_med 
-image_Lrg 
-active  (boolean) 

BTW. 당신은 이미지에 대한 부분 경로를 사용할 수 있습니다, 이것은 당신에게 2 텍스트 필드를 저장합니다. 예를 들어 당신이 SKU 1111에 대한 3 개 이미지가 "small.jpg"를 추가하여 전용 "/ tmp를/image1111"를 저장할 수 있고, 전체 경로가 복원 될 사실

/tmp/image1111small.jpg 
/tmp/image1111med.jpg 
/tmp/image1111lrg.jpg 

, "med.jpg" 그에 따라 경로에 "lrg.jpg"가 추가됩니다.

관련 문제