MySQL - insert into语句要求我输入主键

Lou*_*Lou 1 mysql sql database insert primary-key

我几乎是SQL的新手,我正在使用MySQL和SQLyog.我有五个字段,主键的StudentForename,StudentSurname,StudentAge,StudentHouse和StudentID.StudentID字段设置为主键,而不是Null和AutoIncrement.我正在尝试使用INSERT INTO语句而不必输入主键 - 显然我不应该,它应该更新自己.但它没有工作,它返回错误"列计数与第1行的值计数不匹配".这是我正在使用的代码.我已经设置了表,所以我没有得到查询的代码

INSERT INTO students VALUES('Harry', 'Potter', 'Slytherin', 30)
Run Code Online (Sandbox Code Playgroud)

cow*_*wls 5

您需要明确说明要为其提供值的列,否则假设您将为所有列提供值.例如

INSERT INTO students (`first_name`, `last_name`, `house`, `age`) VALUES('Harry', 'Potter', 'Slytherin', 30)
Run Code Online (Sandbox Code Playgroud)

(我编写了列名,用你的列交换它们)