Das Problem, mit dem ich konfrontiert bin, ist der Import von JSON in Mysql. Ich habe die Interwebs durchsucht, den Stackoverflow und wahrscheinlich noch weitere Quellen gesucht, konnte aber keine einzige richtige Lösung finden. Volle Enthüllung hier - ich bin kein PHP, SQL noch bin ich ein JSON Fachmann.
Was ich versuche zu erreichen, ist ziemlich einfach: Importieren Sie diese JSON-Datei Ссылка in eine Mysql-Datenbank. Ich verstehe, dass ich die JSON-Daten irgendwie in Spalten einordnen muss und dann die Zeilen entsprechend mit dem Inhalt kuriere. Ich brauche nicht alle Daten, aber das meiste. Die Daten sollten später durch eine Suchanfrage von einem Benutzer wiedergegeben werden.
Meine Frage scheint ziemlich einfach zu sein - wie kann ich das machen?
PS: Ich habe versucht, es in XML zu konvertieren, aber ich habe nicht die ausreichenden Rechte, um XML in die SQL-Datenbank zu importieren. Auch der Konverter hat nicht die beste Arbeit geleistet.
Sie können Ihren JSON nach csv exportieren: Ссылка oder Ссылка
Dann:
%Vor%Es sollte für einen oneshot okay sein.
Weitere Informationen zu Ladedaten-Infile .
Wie andere gesagt haben, müssen Sie ein bisschen konvertieren, um das zu tun, was Sie fragen. Glücklicherweise ist es nicht allzu schwierig PHP durch die Daten zu iterieren und den Großteil der Arbeit für Sie zu erledigen. Hier ist ein kurzer Versuch:
%Vor% Dies spuckt eine Reihe von INSERT INTO my_table
(...) VALUES (...); SQL-Anweisungen aus, die Sie in einem speichern können. SQL-Datei und importieren Sie in MySQL. Mit dieser Methode kann jedes INSERT verschiedene Spalten haben, ohne Probleme zu verursachen.
Hinweis: addslashes () ist keine sehr sichere Möglichkeit, dies zu tun, und etwas wie real_escape_string () wäre vorzuziehen, aber dies funktioniert ohne eine DB-Verbindung, vorausgesetzt Ihre JSON-Daten sind vertrauenswürdig.
Ich weiß, es ist ein alter Post, aber vielleicht kann es jemandem helfen. Ich wollte die gleiche Datenbank in mysql erstellen, wie ich in mongoDb habe.
Ich habe eine gültige JSON-Datei mit Daten (keine Struktur), dann habe ich eine Tabelle in MySQL mit der entsprechenden Struktur (gemäß den JSON-Daten) erstellt und über die MySql-Workbench importiert.
Hier ist das Beispiel mit csv, aber Sie kann Ihre JSON-Datei laden. Folgen Sie einfach dem Assistenten zum Importieren von Daten in die Tabelle und vergewissern Sie sich, dass die Struktur gültig ist. Andernfalls wird nichts importiert.