sheeba1507
Erfahrenes Mitglied
Hi,
vielen Dank erst einmal für deine Mühe, den Code komplett hier auszuarbeiten.
Ich habe ihn auch gleich übertragen und mit den notwendigen Modifikationen
meiner Vorgaben aufbereitet.
Hier das Ergebnis :
Nach dem Start erscheint jedoch die Meldung :
Die Tabelle ist aber vorhanden, allerdings ohne Inhalt.
Dieser wurde duch die ganzen Testläufe bereits gelöscht.
Woher kommt jetzt diese Fehler-Meldung ?
Habe ich bei der Übertragung eventuell etwas übersehen ?
Vielen Dank nochmal für eure Hilfe.
Gruß, Mike
vielen Dank erst einmal für deine Mühe, den Code komplett hier auszuarbeiten.
Ich habe ihn auch gleich übertragen und mit den notwendigen Modifikationen
meiner Vorgaben aufbereitet.
Hier das Ergebnis :
PHP:
$conn1 = mysql_connect($db_host,$root1,$db_pass, true) or die(mysql_error());
$conn2 = mysql_connect($db_host,$root2,$db_pass, true) or die(mysql_error());
// Je eine DB wählen
mysql_select_db($datenbank1, $conn1);
mysql_select_db($datenbank2, $conn2);
// Tabellen der zu sichernden DB holen
$res_tabellen = mysql_query("SHOW TABLES", $conn1);
// Zu sichernde Tabellen durchlaufen
while ($tabelle = mysql_fetch_row($res_tabellen))
{
// Datensätze einer zu sichernden Tabelle einlesen
$res_datensaetze = mysql_query("SELECT * FROM ".$tabelle[0]." ORDER BY ID", $conn1);
// Inhalt der Backup-Tabelle löschen
mysql_query("TRUNCATE $tabelle", $conn2) or die (mysql_error());
// Datensätze durchlaufen
$id = 1;
while ($datensatz = mysql_fetch_assoc($res_datensaetze))
{
// Zu ersetzende ID speichern
$alte_id = $datensatz['ID'];
if (is_null($alte_id)) { $alte_id = $datensatz['id']; }
if (is_null($alte_id)) { $alte_id = $datensatz['Id']; }
if (is_null($alte_id)) { $alte_id = $datensatz['iD']; }
$daten = "'".implode("', '", $datensatz)."'";
$qry_backup = "INSERT INTO `".$tabelle[0]."` VALUES (".substr($daten, 0, strlen($daten)).")";
// Zeile in Backup-Tabelle einfügen
$erfolg = mysql_query($qry_backup, $conn2);
if (!is_null($alte_id))
{
// Wenn eine alte ID vorhanden ist, den entsprechenden Datensatz der
// Backup-Tabelle mit der neuen, fortlaufenden überschreiben
$qry_idupdate = "UPDATE `".$tabelle[0]."` SET ID = ".$id." WHERE ID = ".$alte_id;
$erfolg = mysql_query($qry_idupdate, $conn2);
//Fortlaufende ID um 1 erhöhen
$id++;
}
}
}
//Verbindungen schließen
mysql_close($conn1);
mysql_close($conn2);
Die Datenbank "rhh_DB658770" ist die Backup-Datenbank, also das Ziel.Table 'rhh_db685770.array' doesn't exist
Die Tabelle ist aber vorhanden, allerdings ohne Inhalt.
Dieser wurde duch die ganzen Testläufe bereits gelöscht.
Woher kommt jetzt diese Fehler-Meldung ?
Habe ich bei der Übertragung eventuell etwas übersehen ?
Vielen Dank nochmal für eure Hilfe.
Gruß, Mike