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

FEJL 1366 (HY000):Forkert heltalsværdi:'' for kolonne 'id' i række 1

Hvis du vil bruge denne indsættelse, skal du angive en heltalsværdi i din sql i stedet for en tom streng, den skal være sådan her:

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

eller hvis dit id er autoinkrementelt, kan du have din sql sådan her:

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

I dette tilfælde skal dette være din kode:

//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 .= "')";

Læs mere på:



  1. SQL FLOAT:3 punkter, der hjælper dig med at undgå underlige matematiske fejl

  2. Opsætning af maven-afhængighed til SQL Server

  3. Sådan bruges SQL Server HierarchyID gennem nemme eksempler

  4. Hvordan genererer jeg et tilfældigt tidsinterval og tilføjer det til en mysql datetime ved hjælp af php?