Mysql
 sql >> Database >  >> RDS >> Mysql

ERRORE 1366 (HY000):valore intero errato:'' per la colonna 'id' alla riga 1

Se vuoi usare questo inserto, devi fornire un valore intero nel tuo sql invece di una stringa vuota, dovrebbe essere così:

INSERT INTO users (id, username, password, first_name, last_name)
VALUES (1, 'lukeduke', '123456', 'Luke', 'Duke')

o se il tuo ID è autoincrementale puoi avere il tuo sql in questo modo:

INSERT INTO users (username, password, first_name, last_name)
VALUES ('lukeduke', '123456', 'Luke', 'Duke')

In questo caso, questo dovrebbe essere il tuo codice:

//extracting your first element of the array (id in this case)
$attributes = array_slice($attributes, 1);

$sql = "INSERT INTO ". static::$table_name ." (";
$sql .= join(", ", array_keys($attributes));
$sql .= ") VALUES ('";
$sql .= join("', '", array_values($attributes));
$sql .= "')";

Maggiori informazioni su: