Seite 1 von 1

"mysql_insert_id" bei $db->query

Verfasst: Do 23. Jul 2009, 19:07
von malsdgtac
Ich habe wirklich im Forum gesucht, aber nix gefunden.

Wie bekomme ich bei der Ausführung einer Datenbankabfrage mit INSERT die "id" - also des wertes der automatischer erhöht wird. Ich kenne es unter "mysql_insert_id" bei einer selbst aufgebauten Datenbankverbindung.

Danke für Eure Hilfe

Re: "mysql_insert_id" bei $db->query

Verfasst: Do 23. Jul 2009, 19:13
von idea-tec
wenn du genauer wirst, kann man dir sicher helfen, da es hierfür mehrere denkbare möglichkeiten gibt. Tabelle?

Re: "mysql_insert_id" bei $db->query

Verfasst: Do 23. Jul 2009, 19:36
von Dodger77
Also unter Verwendung der Contenido Datenbank-Klasse normalerweise so in der Art (ungetestet):

Code: Alles auswählen

$sql = "INSERT INTO con_xyz (a, b) VALUES (1, 2)";
$db->query($sql);

$lastid = mysql_insert_id($db->link_id());

Re: "mysql_insert_id" bei $db->query

Verfasst: Do 23. Jul 2009, 19:48
von malsdgtac
Super! Danke! das funktioniert!

Re: "mysql_insert_id" bei $db->query

Verfasst: Do 23. Jul 2009, 19:48
von Halchteranerin
Wenn die ID in der Tabelle mit autoincrement definiert ist, musst du beim insert nach dem Tabellennamen die Namen der Spalten angeben, außer der ID-Spalte, dann wird beim Einfügen der Wert automatisch erhöht.

insert into tabellename (Liste der Spalten, mit Komma getrennt) values (gewünschte Werte);

Vor dem Absenden wollte ich gucken, ob inzwischen noch jemand geantwortet hat, weil ich zwischendurch weg musste, und jetzt ist mir nicht mehr klar, was du eigentlich haben willst, nachdem ich Dodgers Antwort und dann auch nochmal deine Frage gelesen habe. :lol:

Eine DatenbankABFRAGE ist eine SELECT-Anweisung, ein INSERT ist einfach eine DatenbankANWEISUNG. Und was willst du erreichen? Geht es nur darum, dass du etwas einfügen willst und nicht weiß, welchen Wert du für die (nächste) ID angeben sollst? Wenn ja, dann geht das einfach so, wie ich es oben angegeben habe. Wenn nicht, dann beschreib dein Problem bitte genauer. :)

Re: "mysql_insert_id" bei $db->query

Verfasst: Do 23. Jul 2009, 20:14
von malsdgtac
Hallo Halchteranerin,

sorry :oops: ich wollte die Id, des letzten INSERTs haben - die Antwort von Dodger war genau das was ich gesucht habe.

Vielen Dank für deine Antwort!