sql >> Database >  >> RDS >> Mysql

ERROR 1366 (HY000):Onjuiste integerwaarde:'' voor kolom 'id' op rij 1

Als u deze insert wilt gebruiken, moet u een geheel getal in uw sql opgeven in plaats van een lege tekenreeks, dit moet als volgt:

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

of als uw id auto-incrementeel is, kunt u uw sql als volgt hebben:

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

In dit geval zou dit uw code moeten zijn:

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

Lees meer op:



  1. Wanneer enkele aanhalingstekens, dubbele aanhalingstekens en backticks gebruiken in MySQL?

  2. Waarom zou MySQL return None uitvoeren?

  3. Mysql-toegang geweigerd wegens gebruikersfout?

  4. Wanneer is het tijd om te upgraden naar SQL?