.sql Datei aus importieren

MiLa

Erfahrenes Mitglied
Halli Hallo,
ich habe mich nun auch lange nicht mehr mit Fragen gemeldet. :)
Naja, auf gehts...
Ich ziehe mir regelmäßig Sicherungen von Datenbanken, dabei erstelle ich .sql Dateien mit der Datenbankstruktur und dem Inhalt der Tabellen per PHPMyAdmin.

Nun möchte ich der Bequemlichkeit halber mir solch ein Script selbst basteln, mit dem ich die Dateien einlesen und auch auslesen kann.
Nur leider fehlt mir hierzu jeglicher Ansatz.

Ich bin vom kleinen Denkanstoß bis hin zum kleinen Code-Schnipsel dankbar :)
 
Zum Einlesen in eine DB gibt's MySQL-Spezifische PHP-Funktionen.

Das Auslesen ist allerdings schwieriger. Du musst dabei die gesamte Tabelle auslesen und die die Statements selbst zusammenbauen. Ist aufwendig :). Hatte mir so etwas auch mal überlegt und dann angefangen, mir Gedanken darüber zu machen. Danach hab ich den Gedanken komplett verworfen ;).

Gruß,
matt
 
Hm, also das wichtigste für mich ist wie der Titel auch sagt das Importieren.

Wie lauten denn diese Funktionen ?!
 
Hier kannst du alle MySQL-Spezifischen PHP-Funktionen einsehen: http://de.php.net/mysql

Die Funktion, die du suchst heißt soweit ich weiß mysql_db_query(). Bin mir aber nicht sicher, habe nur vom Namen geraten. Musst du dir mal anschauen, ob das stimmt. Hab leider keine Zeit mehr :).

Gruß,
matt
 
Hm...
Willst du mich auf den Arm nehmen?! :-)
ich glaube,dass ich doch schon irgendwann in meiner Zeit als PHPler die Funktion mysql_db_query oder mysql_query gesehen hab.
Aber das war auch nciht meine Frage, denn ich habe eine Datenbank die in eine .sql Datei exportiert wurde, darin sind dann die Datenbankstruktur und derren Inhalt.

Soetwas wie das hier befindet sich in der Datei:
Code:
CREATE TABLE forum_threads (
  tid int(10) unsigned NOT NULL auto_increment,
  fid int(10) unsigned NOT NULL default '0',
  id_2 int(10) unsigned NOT NULL default '0',
  subject varchar(32) NOT NULL default '',
  icon varchar(75) NOT NULL default '',
  views smallint(4) NOT NULL default '0',
  replies smallint(5) NOT NULL default '0',
  closed varchar(15) NOT NULL default '',
  lastpost text NOT NULL,
  author text NOT NULL,
  PRIMARY KEY  (tid),
  KEY fid (fid),
  KEY tid (tid)
) TYPE=MyISAM;

INSERT INTO forum_threads VALUES (1, 1, 1, 'titel', 'icon14.gif', 11, 0, '0', '1070206016', '1');

Nun will ich dies per PHP wieder in die Datenbank einfügen, kann mir da jemand weiterhelfen?
 
Hm... eigentlich ist das Schwachsinn, was ich erzählt habe. Du kannst auch mit mysql_query() deine Daten importieren. Ich habe das zwar noch nicht getestet, aber nach meinem Denkvermögen geht das. Denn das, was du in deiner *.sql-Datei hast, ist einfach nur eine "Abfrage" wie ein normales INSERT :).

Und auf den Arm nehmen will ich dich damit nicht ;). Versuch's doch mal.

Gruß,
matt
 
Oke, versuch ichs einfach mal ;)

Ich bezweifle zwar, dass ich damit die ganze Datei importieren kann,
aber wenn das gehen sollt, gebe ich ne Runde Lollis für alle aus ! ;)

*test*
 
Ich denke mal, dass das nicht so einfach geht,
da in der Datei noch zeichen wie:
Code:
' " ; `
vorhanden sind.

Gibt es dafür noch einen anderen weg, oder muss ich den Inhalt der Datei umformatieren?!
Oder wie kann das gehen ?
 
Also, wenn ich die ganzen Sonderzeichen usw. "escape" funktioniert alles wunderbar.
Nur wer hat schon lust das alles per Hand zu machen?! ;)

Ich mache mich jetzt mal auf die Suche nach einer bequemeren Import/Export Methode, als jedes Zeichen zu escapen ;)
 
Zurück