Lou
Lou

Reputation: 2509

MySQL - insert into statement requires me to enter primary key

I'm pretty much a complete newbie to SQL, I'm using MySQL with SQLyog. I have five fields, StudentForename, StudentSurname, StudentAge, StudentHouse and StudentID for the Primary Key. The StudentID field is set as a Primary Key and Not Null and AutoIncrement. I'm trying to use an INSERT INTO statement without having to entering the primary key - apparently I shouldn't need to, it should update itself. But it's not working, it's returning the error "Column count doesn't match value count at row 1". Here's the code I'm using. I've already set up the table, so I haven't got the code for the query that

INSERT INTO students VALUES('Harry', 'Potter', 'Slytherin', 30)

Upvotes: 1

Views: 2347

Answers (1)

cowls
cowls

Reputation: 24334

You will need to explicitly state which columns you will provide values for, otherwise it is assumed you will provide values for all columns. E.g.

INSERT INTO students (`first_name`, `last_name`, `house`, `age`) VALUES('Harry', 'Potter', 'Slytherin', 30)

(I made up column names, swap these with your columns)

Upvotes: 5

Related Questions