PHP & SQL - AUTO_INCREMENT in 2 Spalten

Odomanie

Mitglied
Hallo zusammen :)

ich versuche beim eintragen in eine sql datenbank zum einen eine spalte per AUTO_INCREMENT-Befehl mit einer ID zu versehen und zum anderen in einer zweiten spalte einen wert eintragen zu lassen, der sich aus der ID der ersten spalte und einem fixen wert zusammensetzt.

Hier am Beispiel - Es wird ein neuer Wert per PHP / SQL in die Datenbank geschrieben:

Spalte 1 (ID):

23

Spalte 2:

http://www.domain.de/index.php?id=23


In der ersten Spalte eine ID per AUTO_INCREMENT einzutragen, ist kein Problem.

Wie schaffe ich es nun, dass in Spalte 2 eben an den Ausdruck die neu vergebene ID mit in die Datenbank eingetragen wird?

Ich bin euch für alle Tipps dankbar!


Viele Grüße

Odo
 
Mir ist kein Weg bekannt, das in einem Query zu tätigen. Du kannst allerdings z.B. Spalte2 freilassen, dann die insert_id auslesen und damit ein Update durchführen.

Anderes Thema: Ist es notwendig? Wozu soll diese Voll-URL gut sein, du brauchst sie eigentlich nicht. So etwas löst man normalerweise über die ID + die Programmiersprache.
 
Hallo Lime :)

Danke für deine Hilfe!

Es geht dabei um einen Eintrag in einer Wordpress-Datenbank und da ist eben das Muster wie beschrieben eingetragen.

Dann muss ich also durch eine "2. Runde" ein UPDATE der Tabelle durchführen... unschön :(

Falls noch weitere Ideen kommen, sind diese sehr willkommen :)

Viele Grüße

Odo
 
Du könntest das über MAX() lösen. Dabei aber nicht vergessen, das die beim INSERT erzeugte ID bereits MAX()+1 ist. Darauf kannst du einfach deinen konstanten Wert drauf addieren. Z.B. so:

PHP:
$konstante = 10;
$query = sprintf( "INSERT INTO tabelle (spalte2, spalte3) VALUES ( MAX(id)+1+%d, '%s')", $konstante, "Irgend ein Text als Beispiel" );
mysql_query( $query ) or die( mysql_error() );
 
Zurück