sql >> Databáze >  >> RDS >> Mysql

LAST_INSERT_ID() vždy vrací 0 (RMySQL) - samostatný problém s připojením

Vkládáte NULL hodnoty do sloupce Primární klíč. Protože nemůžete mít dva řádky se stejným PK, pravděpodobně ve skutečnosti nevkládáte žádná skutečná data (což je také pravděpodobně chyba, kterou chcete zachytit). Zkuste:

dbSendQuery(con, "INSERT INTO t VALUES(5);")

Při jeho provedení byste měli získat dvě různé hodnoty pro last_insert_id.

Edit:špatně pochopeno. Viz zde podrobnosti o LAST_INSERT_ID . Upravená odpověď:pokud nezadáte hodnotu v AUTO_INCREMENT pak měli byste dostat LAST_INSERT_ID vrácená hodnota. V tom případě zkuste:

INSERT INTO t DEFAULT VALUES


  1. Automatické obnovení systému Android při vložení nových dat do zobrazení seznamu

  2. Jak se vyhnete konfliktům názvů sloupců?

  3. Proč není v PL/SQL povoleno statické ddl?

  4. Jak změnit jazyk pro vaši Oracle Session