title: Improve MySQL database design
body: <p>I have 2 questions regarding how I should design my SQL(SQLite3) database. The way I use my database is like so:</p>
  
  <p>I have an adjective(or any word really) &amp; I need to resolve that word to its noun form. So for "happily" I need to resolve that word to "happy"(a noun &amp; its generic form). For "hungrier" I need to resolve it to "hungry"</p>
  
  <p><em>Q1:</em> The majority of my SQL queries will involve myself searching the noun table for a specific word(row). <strong>Which SQL table design would be best for my needs &amp; more efficient in terms of speed of search/lookup?</strong></p>
  
  <pre><code>CREATE TABLE NounTable (u_id int PRIMARY KEY, u_word varchar, u_noun varchar);
  // OR
  CREATE TABLE NounTable (u_word varchar PRIMARY KEY, u_noun varchar);
  
  // The majority of my queries will be searching according to the word column
  SELECT u_noun FROM NounTable WHERE u_word="hungrier";
  </code></pre>
  
  <p><em>Q2:</em> If I have a unique integer ID for each row, when I add a new row I need to find the a unique integer ID thats not already taken by another row. In my case each row will have an id in ascending order so for row1 the id=2, for row 2=2....row n=n. </p>
  
  <p>In the past to add a row I first find the largest unique ID then add 1 to it then create that new row. But I once heard that there is an SQL variable, I think called <strong>autonumber</strong> that will do this automatically, is that true? Ie, it will automatically increment. So should I use that instead or would you recommend I stick with having the id as an integer?</p>
  
  <pre><code>CREATE TABLE NounTable (u_id int PRIMARY KEY, u_word varchar, u_noun varchar);
  // Or shd I do this...
  CREATE TABLE NounTable (u_id autonumber PRIMARY KEY, u_word varchar, u_noun varchar);
  </code></pre>
  
  <p>PS: is there much difference between MYSQL &amp; SQLite if any? Maybe different variables? Or is the only difference in the way they store &amp; look up information in the database?</p>