Hallo, ich habe wirklich schon gesucht, aber entweder falsch oder noch nichts passendes gefunden.
Also, das script was ich mir irgendwie zusammengebastelt habe erledigt genau das, was es soll.
die Frage ist nun: geht das auch schneller/performanter?
Es geht darum:
Tabelle 1 Feld mit Werten durch ; getrennt.
Dieses Feld lese ich nun aus und trenne die Werte.
Nun möchte ich die getrennten Werte in eine andere Tabelle einfügen.
Ich bin mir sicher, ich hatte vor Jahren als ich mal etwas mehr mit php gemacht habe eine Lösung für, aber ich komme nicht drauf.
Also mache ich momentan im
while($row = mysql_fetch_object($ergebnis)) wirklich für jeden getrennten wert ein eigenes insert Statement.
der Code sieht also nun so aus:
Also, das script was ich mir irgendwie zusammengebastelt habe erledigt genau das, was es soll.
die Frage ist nun: geht das auch schneller/performanter?
Es geht darum:
Tabelle 1 Feld mit Werten durch ; getrennt.
Dieses Feld lese ich nun aus und trenne die Werte.
Nun möchte ich die getrennten Werte in eine andere Tabelle einfügen.
Ich bin mir sicher, ich hatte vor Jahren als ich mal etwas mehr mit php gemacht habe eine Lösung für, aber ich komme nicht drauf.
Also mache ich momentan im
while($row = mysql_fetch_object($ergebnis)) wirklich für jeden getrennten wert ein eigenes insert Statement.
der Code sieht also nun so aus:
PHP-Code:
<?
$abfrage = "SELECT ean, $feldname1 FROM tabelle";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
$teile = $row->$feldname1; $teile1 = explode(";", $teile);
for($i=0; $i < count($teile1); $i++) // Eine schleife wird so oft ausgeführt wie das Array Inhalte hat
{
if( $teile1[0] == '') {}
else
{
$value_data = trim($teile1[$i]);
$eintrag = "INSERT INTO attribut (ean, data_key, data_value, quelle, data_key_name) VALUES ('$row->ean', '$data_key', '$value_data','$quelle','$data_key_name');";
$eintragen = mysql_query($eintrag);
}
}
}
?>
Kommentar