eCommerce Product Database Design: Step-By-Step

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 ม.ค. 2025

ความคิดเห็น • 141

  • @DatabaseStar
    @DatabaseStar  2 หลายเดือนก่อน

    Want to improve your database design skills? Get my Database Design project Guides here (diagrams, explanations, and SQL scripts): databasestar.mykajabi.com/lpkj-dbdesign/?

  • @ymadhurireddy
    @ymadhurireddy 11 หลายเดือนก่อน +12

    This is one of the videos to Design a Database. Appreciate your time to make this video.

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Glad it was helpful!

  • @varunkapadiya6863
    @varunkapadiya6863 11 หลายเดือนก่อน +4

    this is the best video I have seen before. thanks a lot !!!!

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน +1

      Wow thanks! I’m glad you like it.

  • @Kaffeejunk1e
    @Kaffeejunk1e 9 หลายเดือนก่อน +5

    wow. i just started learning sql. i watched some videos for mysql, mariadb, postgresql etc. with the basics how to create and fill tables with content. but in none of the videos there was any similar way of working with workbench like you did. this was VERY helpful for me and should be a key video for everyone learning sql and db design.

  • @JimRohn-u8c
    @JimRohn-u8c 11 หลายเดือนก่อน +2

    This amazing! Please keep making more!

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Thanks, I will make more like this!

  • @hoangthypham6976
    @hoangthypham6976 3 หลายเดือนก่อน +1

    Thanks for your video I have a RDBMS final test at this week and tbh, i was so confused abt everything i've learned in my class. You help me a lots.

    • @DatabaseStar
      @DatabaseStar  3 หลายเดือนก่อน

      You're welcome, glad it helped!

  • @SergiiBoiko
    @SergiiBoiko 5 หลายเดือนก่อน +1

    This is the best video I have seen before!

    • @DatabaseStar
      @DatabaseStar  5 หลายเดือนก่อน

      Thanks! I’m glad you liked it.

  • @mrbartuss1
    @mrbartuss1 11 หลายเดือนก่อน +1

    Great to see how it actually works in a real world

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน +1

      Glad you found this format useful!

  • @hammam92
    @hammam92 10 หลายเดือนก่อน +1

    Thank you so much. I am building the erd diagram for my own business and this helped me a lot. I appreciate your videos bro

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      Glad it was helpful!

  • @vishalpoddar
    @vishalpoddar 5 หลายเดือนก่อน +1

    How do we handle multiple kinds of product variation.17:29 Example: In the above example the product_variation table captures the variation in size , but what if we also had to capture the variation in colour as well i.e. suppose product_code should have remained same for all the size and colour combination. Should we have then moved the colour_id too to the product variation table? Then I think we would have qty for the combination of size and colour.. Also in that case I think the product variation table would not have been necessary. Thanks

    • @DatabaseStar
      @DatabaseStar  4 หลายเดือนก่อน

      Good question, yes if that was the scenario then I believe the product variation would not be needed, and capturing the qty for the combination of size and colour could work.

  • @Kevin-kh7xv
    @Kevin-kh7xv 6 หลายเดือนก่อน +2

    Thank you so much for the attention to detail in making these practical videos. They were really great resources for me to learn/review key concepts during my job search, which I was fortunate enough to land!
    Is there a way for your viewers to support your work monetarily so you can continue to make these videos?

    • @DatabaseStar
      @DatabaseStar  6 หลายเดือนก่อน +1

      Thanks Kevin, glad you like it! Glad to hear they have helped you get a job!
      Yes, I do offer paid courses on SQL and database design, which are available here: www.databasestar.com/course-list/

  • @Lykkos-321
    @Lykkos-321 11 หลายเดือนก่อน +2

    this is top content!! thanks a lot!!

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Glad you like it!

  • @johnnychin9598
    @johnnychin9598 3 หลายเดือนก่อน

    Oh my God , this tutorial is GODLIKE. Your the best sir. Thank thank a milliooooonn thank you very muchhhhhhh.

    • @DatabaseStar
      @DatabaseStar  3 หลายเดือนก่อน

      Wow thanks a lot, I’m glad you liked the tutorial!

  • @VenewebTV
    @VenewebTV 10 หลายเดือนก่อน +1

    Excelent video, regards from Caracas, Venezuela

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      Thanks a lot!

  • @houseofmalik9944
    @houseofmalik9944 11 หลายเดือนก่อน +2

    Thanks for this great content! I was getting really confused with so many product attributes but you make it seem easy. I'll practice a little to fully understand and hopefully convert the database design to hibernate

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Thanks, I'm glad it helped!

  • @ogunacg3387
    @ogunacg3387 หลายเดือนก่อน +1

    I have a quick question so don't you think that there should be a Many to Many relation between ProductCategory and Attribute Type to ease the filter that the user going to make according to selected ProductCategory? I think it would be much easier for me to show Products to the users who has selected ProductCategory has these Attirbutes that can be filtered on and I can show them realted Products based on filter that they made?

    • @DatabaseStar
      @DatabaseStar  หลายเดือนก่อน +2

      Yeah that's a good idea, it could work.

    • @ogunacg3387
      @ogunacg3387 หลายเดือนก่อน +1

      @DatabaseStar Thank you for your feedback because it can be hard to validate myself .

  • @jsnow07grad
    @jsnow07grad 10 หลายเดือนก่อน

    This is so helpful! Thank you!

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      Glad it was helpful!

  • @dota2-plays-shorts
    @dota2-plays-shorts 5 หลายเดือนก่อน +1

    nice in depth explination. thanks for your efford :)

    • @DatabaseStar
      @DatabaseStar  5 หลายเดือนก่อน +1

      Glad it was helpful!

  • @joel-rg8xm
    @joel-rg8xm 11 หลายเดือนก่อน +1

    Thank you, very useful to me.

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Glad it was helpful!

  • @triplestrafe
    @triplestrafe 11 หลายเดือนก่อน

    appreciate this comprehensive video!

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Glad it was helpful!

  • @Shkkmj6868
    @Shkkmj6868 4 หลายเดือนก่อน

    Thank you so much. You explained it very nicely.

    • @DatabaseStar
      @DatabaseStar  4 หลายเดือนก่อน

      Glad it helped.

  • @miyingojamil6784
    @miyingojamil6784 2 หลายเดือนก่อน +1

    I think it better for primary key to have Serial datatype(auto increasing number), unless there is a custom format being followed, like car license plate.
    Thanks

    • @DatabaseStar
      @DatabaseStar  2 หลายเดือนก่อน

      Good idea, I usually use auto-incrementing integers (such as Serial in Postgres).

  • @JV-pu8kx
    @JV-pu8kx 2 หลายเดือนก่อน +2

    Do yourself, and everyone else, a favor. Set your code editor to use a mono-spaced font!

    • @DatabaseStar
      @DatabaseStar  2 หลายเดือนก่อน +1

      Great idea! My other editors are set this way, but I've just used the default for MySQL Workbench which is not monospaced. I'll change it. Thanks!

    • @JV-pu8kx
      @JV-pu8kx 2 หลายเดือนก่อน

      @DatabaseStar For anyone else who is reading this: I use mono-spaced fonts anytime I am indicating, on a Web page, in print, etc., something to be typed. Can be code, file names, etc., except web and email addresses. This makes it easier to see exactly what is to be typed as the spaces are clearly visible and the I (uppercase i), l (lowercase L), and 1 (one) are, usually, better differentiated. Not always so with O (letter O) and 0 (zero), but more so than with proportional fonts. I have seen editors that would restrict the font choices to mono-spaced fonts. Why this is not so for _all_ code editors is beyond me.

  • @AmarjargalB
    @AmarjargalB 6 หลายเดือนก่อน

    I want you say Thank you. 🙏🙏🙏

    • @DatabaseStar
      @DatabaseStar  6 หลายเดือนก่อน

      You're welcome!

  • @mannycalavera121
    @mannycalavera121 11 หลายเดือนก่อน

    So much high quality information

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Thanks! Glad you liked it.

  • @caophuvinhfplhcm
    @caophuvinhfplhcm 2 หลายเดือนก่อน

    Thank you very much sir, this video is really helpful. Btw, is this technique called "database custom filed with EAV model"?

    • @DatabaseStar
      @DatabaseStar  2 หลายเดือนก่อน

      You’re welcome! Yes this is a kind of EAV model, the variation table and related tables are similar to that.

  • @wassimyazbekk
    @wassimyazbekk 11 หลายเดือนก่อน +1

    Thank you so much

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน +1

      You're most welcome

  • @nickwoodward819
    @nickwoodward819 2 หลายเดือนก่อน

    Awesome - but quick question if you don't mind - at what point does an attribute become a variation property, or vice versa? IE what if the website started selling hair clips that don't have a size?

    • @nickwoodward819
      @nickwoodward819 2 หลายเดือนก่อน

      Ahh, it's to allow the stock level to vary based on the variation. So if I wanted the price to change based on a variation, say color, I'd have to put both the price and color entries in the product_variation table?

    • @nickwoodward819
      @nickwoodward819 2 หลายเดือนก่อน

      ha, that still makes price variations based on *size* difficult though... interesting... :D

    • @DatabaseStar
      @DatabaseStar  2 หลายเดือนก่อน

      Yeah that's right, it depends on how you want to track stock or prices. This is just a suggested design though.

    • @nickwoodward819
      @nickwoodward819 2 หลายเดือนก่อน

      @@DatabaseStar yeah for sure, enjoying it, and your emails. thanks :)

  • @DucHuu03
    @DucHuu03 10 หลายเดือนก่อน +1

    This is so amazing

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      Thanks! I’m glad you like it.

  • @IamDoQtorNo
    @IamDoQtorNo 10 หลายเดือนก่อน

    Thanks alot for this. I am working on mine and this is just what I needed to get it going in the right direction. A couple of questions: what are your thoughts about using visio as a diagram design layout mechanism.? question number 2: I am considering setting up a test web server on a separate metal box different from my sql box. Is there a way to have my webserver to connect to the sql server for the data storage etc or should i put them on one machine?

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      Thanks, I'm glad you like it!
      1 - Visio is a good tool for database design. It's been around a while too. I often don't use it as the places I work don't have a license for it (and I don't use it at home), but I have used it in hte past.
      2 - I think this would be possible, but the details are outside of my area of expertise. I assume you would have to allow connections on certain ports.

  • @fresonn
    @fresonn 10 หลายเดือนก่อน

    Thanks for the video, very informative!
    In the context of this diagram:
    - how can I differentiate which product colors are available and which are sold out and display this
    - the same with dimensions. What sizes are currently available and which ones are not?

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      You can relate the product_variation table (which has the qty_in_stock column) to the product_item and then the colour_table (which has the references of colours) to see which items are in stock.

    • @fresonn
      @fresonn 10 หลายเดือนก่อน

      @@DatabaseStar won't the new relation be redundant?
      SELECT
      s.size_name,
      pv.amount > 0 as in_stock
      FROM product_variation pv
      INNER JOIN product_item pi ON pi.product_item_id = pv.product_item_id
      INNER JOIN size_option s ON pv.size_id = s.size_id
      WHERE pv.product_item_id = 1;
      I only have this idea for now

  • @YT-cd2vi
    @YT-cd2vi 9 หลายเดือนก่อน

    Thanks, I am building the Product Data Model in Data Vault 2.0, and struggling to get the concept to be implemented in DV format. Any pointers help will be really helpful.

    • @DatabaseStar
      @DatabaseStar  9 หลายเดือนก่อน

      No problem! I don't actually have any experience with Data Vault so I can't be of much help, but I hope the concepts of normalisation would still apply.

    • @YT-cd2vi
      @YT-cd2vi 9 หลายเดือนก่อน

      @@DatabaseStar No worries, thanks for the response. Will keep trying.

  • @MyStuff-x7g
    @MyStuff-x7g 22 วันที่ผ่านมา

    Thank you for this video. I am looking for a website template like the one you are "ASOS" that you are using. Where can I clone your project? I need to use this for a hardware eCommerce site.

    • @DatabaseStar
      @DatabaseStar  16 วันที่ผ่านมา

      I don’t know where you would get a template from. I just followed along with this website and created the database.

  • @aminem2080
    @aminem2080 7 หลายเดือนก่อน

    very understandable 💯
    but i think using that EAV approach it will not fit when your products are linked variations like "BLACK color SM size SILK fabric..." like that first approach would work, could it cause u can retrieve one buy one no way to linked them to be select as one choice while being a combination of different features

    • @DatabaseStar
      @DatabaseStar  7 หลายเดือนก่อน +1

      I think I understand your concern, but I think the query would be OK. You can get all of the product variations in one query and their variations, and display them on the page as needed.

  • @bilkisuismail6096
    @bilkisuismail6096 11 หลายเดือนก่อน

    Thank you

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      You’re welcome!

  • @Kashmiriboy.
    @Kashmiriboy. 7 หลายเดือนก่อน

    Sir it is possible to include product category as an attribute of product ?

    • @DatabaseStar
      @DatabaseStar  7 หลายเดือนก่อน

      Yes, you can join to the category table for this.

  • @purushottamkute7485
    @purushottamkute7485 11 หลายเดือนก่อน

    Can you make a similar video for a movie ticket booking application

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Good idea, I can do that

    • @purushottamkute7485
      @purushottamkute7485 11 หลายเดือนก่อน

      @@DatabaseStar thank you, looking forward to it

  • @pedrogermano15
    @pedrogermano15 9 หลายเดือนก่อน

    Congrats, great video! I would love if you teach us how to design a digital wallet database!

    • @DatabaseStar
      @DatabaseStar  9 หลายเดือนก่อน +1

      Thanks! Sure, what do you mean by a digital wallet database?

    • @pedrogermano15
      @pedrogermano15 9 หลายเดือนก่อน

      @@DatabaseStar like PayPal or Wise! Demonstrating how can you design a database that requires transactions using money on balance, credit card and stuff like that

  • @djtoon8412
    @djtoon8412 9 หลายเดือนก่อน

    can we use jsonb fields as alternative EAV

    • @DatabaseStar
      @DatabaseStar  9 หลายเดือนก่อน

      Yes you can, it has a similar kind of flexibility.

    • @matsberg1568
      @matsberg1568 8 หลายเดือนก่อน

      I am currently implementing a jsonb field for a project im working on. Remember, querying such a field comes with its own downsides

  • @7Janiel
    @7Janiel 5 หลายเดือนก่อน

    Hello, i am trying to create an online shop that might sell not only clothes but other products as well like laptops. How would i create the database so it can accommodate clothes and laptops for example which can have different attributes (size for clothes and processor_type for laptops). Thanks

    • @DatabaseStar
      @DatabaseStar  5 หลายเดือนก่อน

      You can use the database design in this video, I think, and the product categories would be where you would have clothes and laptops.

  • @tanvu3956
    @tanvu3956 10 หลายเดือนก่อน

    Thanks a lot! Can I have diagram and script. Thanks

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน

      Sure! You can get them at the link here, which is also in the description: www.databasestar.com/dbdesign/

  • @juamurasaki7311
    @juamurasaki7311 8 หลายเดือนก่อน

    excuse me, i am newbie, i want to ask the code from the video is can use on dbvear or MySQL workbench? i still difficult to used them. i am happy if you englightmen

    • @DatabaseStar
      @DatabaseStar  8 หลายเดือนก่อน

      You can use it in any editor in SQL. You may need to make some minor adjustments for each database, such as data types, but it should work.

  • @codingcambodia
    @codingcambodia 6 หลายเดือนก่อน

    Thanks for the great video. Hopefully , you will create a eCommerce database design that has multi vendors like amazon or alibaba

    • @DatabaseStar
      @DatabaseStar  5 หลายเดือนก่อน

      You're welcome! Good idea

  • @AmirMufid
    @AmirMufid 8 หลายเดือนก่อน

    what name software for create database design like this video?

    • @DatabaseStar
      @DatabaseStar  8 หลายเดือนก่อน

      It’s called LucidChart.

  • @Spkntei
    @Spkntei 11 หลายเดือนก่อน

    thanks bro

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      No problem!

  • @emesaiYT
    @emesaiYT 7 หลายเดือนก่อน

    how if some product dont have size ?
    is the size_id on product will be null ?

    • @DatabaseStar
      @DatabaseStar  7 หลายเดือนก่อน +1

      It could be null, or you could have a Size value of "not applicable" and relate that.

    • @emesaiYT
      @emesaiYT 7 หลายเดือนก่อน

      @@DatabaseStar okay thanks

  • @PhyoKo-kd4ks
    @PhyoKo-kd4ks 8 หลายเดือนก่อน

    What use application for database design

    • @DatabaseStar
      @DatabaseStar  8 หลายเดือนก่อน

      It’s called Lucidchart

  • @huynguyenluonggia6393
    @huynguyenluonggia6393 8 หลายเดือนก่อน

    how i insert image for productItem, example, has 5 size and 5 color -> has 25 product item???

    • @DatabaseStar
      @DatabaseStar  8 หลายเดือนก่อน

      You can insert separate rows for each option.

  • @ДенисТерентєв
    @ДенисТерентєв 8 หลายเดือนก่อน

    Where can I find the SQL code for this database?

    • @DatabaseStar
      @DatabaseStar  8 หลายเดือนก่อน

      You can find it in the link in the description, which is here: www.databasestar.com/dbdesign/

  • @X4Xubi
    @X4Xubi 6 หลายเดือนก่อน

    Brother the script U provided in Ur GitHub repository has possible errors, I ran it in MySQL workbench but it failed saying "Error Code: 1824. Failed to open the referenced table 'attribute_type' ". Can U plx fix this ASAP as I have to practice queries on some meaningful data. Plx provide the correct script to create this database or guide me if I made a mistake.

    • @DatabaseStar
      @DatabaseStar  6 หลายเดือนก่อน

      Hi Xubi, as mentioned over email, the script has not been updated. The issue was caused by the tables not being created in the correct order.

  • @iordanistsapanidis4021
    @iordanistsapanidis4021 2 หลายเดือนก่อน

    How to Design a Database for cityguide products

    • @DatabaseStar
      @DatabaseStar  2 หลายเดือนก่อน

      What’s a city guide product? I have a video on my channel about designing a database so you can follow that process.

  • @abo8esabo8es52
    @abo8esabo8es52 11 หลายเดือนก่อน

    Can you please make a practical video like this for w3school

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Sure, what do you mean "for w3school"? Like, view their website and create a database design for it? If so, w3school seems to be a simple blog, is that what you're looking for?

    • @abo8esabo8es52
      @abo8esabo8es52 11 หลายเดือนก่อน

      @@DatabaseStar yes and we add more feature

  • @VeeWebCode
    @VeeWebCode 11 หลายเดือนก่อน

    I love you. you are the best.

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Hahah thanks!

  • @devmdad
    @devmdad 21 วันที่ผ่านมา +1

    Why creating product_gender when its just a parent category for subcategories and can be named just as product_category with attributes of id, name and parent_id so this way you have one table handling the logic for infinite level of categories.

    • @DatabaseStar
      @DatabaseStar  16 วันที่ผ่านมา

      That’s a good point, it could just be another category. I may have mentioned that in the video, but if not, then yes it could work.

  • @basketballskills-ur7lc
    @basketballskills-ur7lc 8 หลายเดือนก่อน +1

    Lets connect

  • @gc5035
    @gc5035 11 หลายเดือนก่อน

    Please design how to design permission based system there are mutiple actors .each actor has some permission

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Good idea, I can do that.

  • @mac.ignacio
    @mac.ignacio 11 หลายเดือนก่อน

    Confirmation link not working.

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Which confirmation like is this? Is it the one in the email that I send to you?

  • @psmontte
    @psmontte 9 หลายเดือนก่อน

    Where is the direct link to Schema?

    • @DatabaseStar
      @DatabaseStar  9 หลายเดือนก่อน

      What do you mean?

  • @AfrinJahan-cg7fl
    @AfrinJahan-cg7fl หลายเดือนก่อน

    how can i have this source code free please

    • @DatabaseStar
      @DatabaseStar  หลายเดือนก่อน

      There’s a link at the top of the description where you can get the source code or SQL scripts.

    • @AfrinJahan-cg7fl
      @AfrinJahan-cg7fl หลายเดือนก่อน

      @DatabaseStar I tried but can't access it🙂

  • @Sedhu_17
    @Sedhu_17 10 หลายเดือนก่อน

    why we remove gender table

    • @DatabaseStar
      @DatabaseStar  10 หลายเดือนก่อน +1

      It's because we can represent the gender as a category in the category table.

  • @DevanshuKamble-uz3fi
    @DevanshuKamble-uz3fi หลายเดือนก่อน

    can any one send this er diagram

    • @DatabaseStar
      @DatabaseStar  หลายเดือนก่อน

      The link for the diagram is at the top of the description.

  • @JosephineFahy
    @JosephineFahy 11 หลายเดือนก่อน

    You sound like a Kiwi! 😄

    • @DatabaseStar
      @DatabaseStar  11 หลายเดือนก่อน

      Haha yeah the New Zealand and Australian accents are similar!

  • @OtabekAtaxanov-c2l
    @OtabekAtaxanov-c2l หลายเดือนก่อน +1

    I received very very valuable information. So Iʼm glad to see this channel thanks a lot to founder database star

    • @DatabaseStar
      @DatabaseStar  หลายเดือนก่อน

      Thanks! Glad you find the videos useful