title: Do I need a Primary Key If I'm using 1 to Many Relationship?
body: <p>I have a table called <code>branch</code></p>
  
  <p>It looks something like.</p>
  
  <pre><code>+----------------+--------------+
  |     branch_id  |  branch_name |
  +----------------+--------------+
  |         1      |  TestBranch1 |
  |         2      |  TestBranch2 |
  +----------------+--------------+
  </code></pre>
  
  <p>I've set the <code>branch_id</code> as primary key.</p>
  
  <p>Now my question is related to the next table called <code>item</code></p>
  
  <p>It looks like this.</p>
  
  <pre><code>+----------------+-----------+---------------------------+
  |     branch_id  |  item_id  |         item_name         |
  +----------------+-----------+---------------------------+
  |         1      |     1     |  Apple                    |
  |         1      |     2     |  Ball                     |
  |         2      |     1     |  Totally Difference Apple |
  |         2      |     2     |  Apple Apple 2            |
  +----------------+-----------+---------------------------+
  </code></pre>
  
  <p>I'd like to know if I need to create a primary key for my <code>item</code> table?</p>
  
  <p><strong>UPDATE</strong>
  They do not share the same items. Sorry for the confusion.. A branch can create a product that doesn't exist in the other branch. They are like two stores sharing the same database.</p>
  
  <p><strong>UPDATE</strong>
  Sorry for the incomplete information. 
  These tables are actually from two local database...
  I'm trying to create a database that can exist on its own but would still have no problem when mixed with another. So the system would just append all the item data from another branch without mixing them up.. The branches doesn't take the <code>item_id</code> of the other branches in consideration when generating a <code>unique_id</code> for their items. All the databases however may share same <code>branch</code> table as reference.</p>
  
  <p>Thank you guys in advance.</p>