![]() |
Mit MySQL lokal arbeiten
Guten Abend,
ich habe folgendes Anliegen. Ich habe eine Datenbank lokal vorliegen "test.sql". Den Inhalt dieser Datenbank möchte ich nun geordnet darstellen. Man könnte sagen wie PhpMyAdmin. Nur möchte ich das Ganze eben können, ohne mir z.B. XAMPP zu laden und dort die DB zu importieren. Jetzt ist meine Frage, wie parse ich die Datenbank? Gibt es dazu eine Komponente die das kann, oder muss ich das selbst bewerkstelligen? Wie macht das PhpMyAdmin? Ich stelle es mir schwer vor so eine Datenbank manuell zu parsen, weil evtl. ein Leerzeichen vorhanden sein könnte oder auch nicht. Oder "Gänsefüßchen" statt Hochkomma und ander herum. Könnt ihr mir da vielleicht einen Denkanstoß geben? |
AW: Mit MySQL lokal arbeiten
Ähm, wenn du eine xyz.sql Datei hast, dann hast du zu 123,45% keine Datenbank vor dir.
Das ist ungefähr so, als ob du eine Textdatei hast und sagst, ich habe hier eine Textverarbeitung. Wie das phpMyAdmin macht? Der verbindet sich zu einem SQL-Server und die Sprache dort heißt SQL, soll also heißen, der SQL-Server kann den Inhalt dieser .sql Datei verstehen und verarbeiten. Es gibt noch die Möglichkeit MySQL embedded zu verwenden, aber Obacht vor der Lizenzfalle |
AW: Mit MySQL lokal arbeiten
Stimmt du hast recht xD
Natürlich ist es wenn ich eine .slq vor mir habe nur eine ganz normale Textdatei. Ok ich denke ich werde den Inhat dann wohl ganz normal mit zahlreichen pos Abfragen parsen müssen. |
AW: Mit MySQL lokal arbeiten
Zitat:
Um dir weiterhelfen zu können, wäre es sinnvoll, wenn du erst einmal berichtest, worum es überhaupt geht: 1. Was befindet sich in der SQL-Datei? 2. Was möchtest du erreichen? 3. eventuell noch: Wo hast du die Datei her? |
AW: Mit MySQL lokal arbeiten
Ich setze hier mal voraus, dass die vorliegende .sql Datei sowas ist, wie das was der alte MySQL Administrator als Backups erstellt hat. (Also Table Definitions und Inserts für alle Tabellen in einer großen Datei.):
Wenn es nur darum geht die Daten daraus zu lesen, lad dir dich einfach fix den MySQL Community Server runter. Dann den Inhalt der Datei dort als Script ausführen, und du hast die Datenbank als wirkliche Datenbank vorliegen. Von dort aus kannst du dann halt mit allem was MySQL verbinden kann darauf zugreifen. So lange du das DBMS oder das Programm dass die DB liest (vorausgesetzt es nutzt die libmysql.dll und/oder kann NUR MySQL lesen) nicht an Kunden weiter gibst, ist hier auch kein Lizenzproblem zu erwarten. Alternativ geht auch praktisch immer MariaDB statt MySQL - dann auch komplett ohne Lizenzgeschwurbel. Ganz ehrlich, der Community Server ist 10x schneller runtergeladen und installiert als dein hypothetisches Programm die .sql Datei mit Pos() durchgeparsed hat. Wenn du dazu noch die Zeos-Lib (kostenfreie DB-Komponenten die auch mit MySQL prima können) installierst, steht dem eigenen Programm zum Daten migrieren nichts mehr im Wege. Bevor ich da mit Pos() und Konsorten ankäme... also da müsste ich mir schon mächtig einen trinken um mir den unnötigen Schmerz antun zu wollen. |
AW: Mit MySQL lokal arbeiten
@Medium
So wie ich die Lizenz-FAQ von MariaDB verstehe gibt es dort auch noch diese Lizenzproblematik. Entschärft was die Client-Lib betrifft, aber noch da ... ![]() Zitat:
|
AW: Mit MySQL lokal arbeiten
Der Spaß hier ist jedoch, dass dieses 2. Statement von beiden, MySQL und MariaDB gemacht wird. Beide sind aber auch in der Praxis gegeneinander austauschbar, so dass für beide Fälle gilt: Es würde auch mit dem jeweils anderen DBMS gehen.
Ausserdem findet sich auf der von dir verlinkten Seite gleich oben folgender Text: Zitat:
Edit: Zudem sagt dein Zitat: Zitat:
Letztlich hat das aber in diesem Thread hier nicht allzu viel zu suchen, da es ja scheinbar wirklich nur um ein kleines internes Tool geht, welches nicht für die Veräusserung an Kunden gedacht ist. Aber halt selbst wenn... |
AW: Mit MySQL lokal arbeiten
Also um es jetzt nochmal richtig zu sagen.
Es handelt sich bei meiner Datenbank um ein Backup von meiner Internetseite. Und darin sind wie schon erwähnt wurde Befehle wie "CREATE TABLE", "INSERT INTO", etc. Also nichts spektakuläres. Also wenn ich das jetzt richtig verstanden habe kann ich diese .sql Datei in ein DBMS laden und dann mit Querybefelen die Daten auslesen? Und ja, es handelt sich dabei um ein kleines Tool ausschließlich für mich selbst. |
AW: Mit MySQL lokal arbeiten
Zitat:
Zitat:
Zitat:
Zitat:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz