title: Primary Key issues when using raw_input with SQLite 3 and Python
body: <p>in my database I'm using <code>raw_input</code> to allow users to enter data into a database, the problem is that I have an ID assigned to each record of data that is the primary key of the table.</p>
  
  <pre><code>username = raw_input("What would you like your username to be? ")
  email = raw_input("What is your email address? ")
  firstName = raw_input("What is your first name? ")
  surname = raw_input("What is your surname? ")
  age = raw_input("How old are you? ")
  password = raw_input("What is your password?") #Encryption method will be added later
  age = int(age) #Changing the age variable into an integer so it can be inputted into the database
  
  #DB part
  conn = db.connect('apollo.db') #Connecting to the database
  cursor = conn.cursor()
  cursor.execute("INSERT INTO users VALUES(?, ?, ?, ?, ?, ?)",
              (username, email, firstName, surname, age, password)) #Inserting the user's data into the table
  
  conn.commit() #Committing the changes
  
  conn.close() #Closing the connection
  </code></pre>
  
  <p>I assumed that because the primary key increments automatically that it would not be needed to be added into the code because each record would automatically get a number. The problem is, I get this error message when I've answered all of the <code>raw_input</code> questions:</p>
  
  <pre><code>sqlite3.OperationalError: table users has 7 columns but 6 values were supplied
  </code></pre>
  
  <p>Is there something I need to add to the code for the primary key?</p>