2010-12-12 9 views
0

Ich habe eine große Liste von Daten, die ich in eine MySQL-Datenbank einfügen muss. Alle Tabellen sehen strukturell gleich aus. Gibt es einfache Möglichkeiten, alle Tabellenzeilen in eine SQL-Datei zu exportieren, die bereit ist, in eine Datenbanktabelle mit derselben Struktur zu importieren?Einfache Möglichkeit, HTML-Tabelle in SQL-Datei zu speichern?

Klingt wie etwas, das mit Javascript erreicht werden könnte, aber ich weiß nicht genug Javascript, um es noch zu tun, und ich habe auch nicht sehr viel Zeit, es zu tun. Ich brauche es innerhalb weniger Tage.

Ich habe es auch in einer Excel-Datei, wenn es so einfacher ist. Ich habe gesucht, aber die meisten Ergebnisse sind für den Export von SQL in HTML (anders herum), die ich nicht wirklich brauche, die anderen Ergebnisse haben mir auch nicht wirklich etwas gegeben.

Alle Vorschläge würden sehr geschätzt werden.

Antwort

1

Man könnte dies ziemlich leicht mit jQuery tun:

var output = []; 
var temp; 
var cellValues; 
$('tr').each(function() { 
    temp = 'INSERT INTO `mytable` VALUES ("; 
    cellValues = []; 
    $(this).children().each(function() { 
     cellValues.push('"' + $(this).text() + '"'); // <-- you may need to do escaping here 
    }); 
    temp += cellValues.join(", ") + ");"; 
    output.push(temp); 
}); 

console.log(output.join("\n")); 
+1

und senden Sie diese Injektion Monster auf den Server? woah –

+1

gut, ich würde es kopieren und es selbst einfügen. Offensichtlich würde dies nicht auf einer öffentlichen Seite für irgendjemand sein ... – nickf

0

Wenn Sie Unix verwenden, Sie awk verwenden können, um die Datei mit HTML-Tabelle in CSV zu konvertieren. Die meisten Datenbankserver scheinen Import von CSV zu unterstützen

EDIT:

Auch wenn Sie Unix nicht über awk verwenden oder kümmern Sie die Tabelle in Ihrem bevorzugten Texteditor öffnen und Suchen/Ersetzen

1. "<tr>" "" 
2. "</tr> "" 
3. "<td>" "" 
4. "</td> ";" 

2

Wenn Sie Zugriff auf phpMyAdmin haben, können Sie eine CSV-Datei direkt in Ihre MySQL-Tabelle importieren (Sie können eine Excel-Datei im Menü Speichern unter in eine CSV-Datei speichern).

Siehe hier

http://vegdave.wordpress.com/2007/05/19/import-a-csv-file-to-mysql-via-phpmyadmin/

Ihre Tabelle exacly als CSV-Datei die gleiche Struktur sein sollte, das heißt alle Spalten in der Reihenfolge Ihrer CSV-Datei.

+0

Ich hatte nicht an Excel gedacht. Ordentlich –

+0

Nach 5 Minuten "loading ..." gab es mir einen Syntaxfehler. Ich bin aber einen Schritt näher, danke! – qwerty

+0

Dies ist der richtige Weg. Wenn du Zugriff auf den DB-Server hast, würde ich das PHP-Stück überspringen. Hier ist eine Referenz für MySQL LOAD DATA INFILE: http://dev.mysql.com/doc/refman/5.1/en/load-data.html – orangepips

Verwandte Themen