sql >> Base de Datos >  >> RDS >> Mysql

¿Qué significa MySQL con el recuento de columnas que no coincide con el recuento de valores en la fila 1?

Su employee la tabla tiene 7 columnas, pero está dando 8 valores para insertar, lo que genera el mensaje de error que está recibiendo.

Un buen hábito es listar las columnas para insert en la declaración. Esto hace que este tipo de error sea mucho más fácil de detectar, ya que no necesita mirar hacia atrás en la definición de la tabla (también evita que su consulta falle si alguna vez agrega nuevas columnas a la tabla en algún momento en el futuro - o suelte las columnas existentes).

INSERT INTO employee(emp_id, first_name, birth_day, sex, salary, super_id, branch_id)
VALUES(100, 'David', 'Wallace', '1967-11-17', 'M', 250000, NULL);

Nota al margen:identificador sin comillas first-name , que se puede ver en la create table declaración para employee , no es válido porque contiene un guión (- ). Supongo que es un error tipográfico y en su lugar te referías a un guión bajo (first_name ).