• Correct me if I'm wrong, but a given product will have multiple instances. Let's assume a can of oil. We can define all the properties about that can of oil, but, we don't have one can that we put into a shipping box. We have lots of cans that go into lots of shipping boxes. Based on that, you probably need some sort of Inventory table (or maybe just a counter on the Product table, disagreement can be had here) that defines what you're shipping. Then, the second design, multiple products to multiple shipping boxes, makes more sense.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning