Homepage selbermachen 7.852 Themen, 35.619 Beiträge

? zu PHP

trainspotter / 6 Antworten / Baumansicht Nickles

Hallo,


habe mich in den letzten Tagen mal ein wenig mit PHP beschäftigt. Nun stehe ich gleich vor einem grundsätzlichen Problem:
Alle meine Datenbanken stehen im Format .dbf zur Verfügung. Gibt es einen Weg, diese in das SQL-Format zu überführen, wenn möglich unter Beibehaltung der Umlaute etc.?


Gruß Günter

bei Antwort benachrichtigen
Herr-Rossi trainspotter „? zu PHP“
Optionen

Hi Günter,

mit .dbf könntest Du z.B. das alte dbase-Format meinen, wobei es nicht "das" dbase-Format gibt. dbase ist übrigens immer eine SQL-Datenbank gewesen.

Wenn Du allerdings meinst, dass Du Deine alten dbase-Daten in eine MySQL-Datenbank importieren willst (davon gehe ich mal aus), dann solltest Du Dir mal die folgende Seite ansehen:

http://www.mysql.com/doc/en/Contrib_converters.html

Dort kannst Du über die Suchen-Funktion in Deinem Browser alle möglichen Daten-Konvertierungs-Tools für die MySQL-Datenbank finden. Diese Tools sind i.d.R. praktischer als manuelle ASCII-Imports einzelner Tabellen.

Auch wenn es hier keiner hören will: notfalls kannst Du als Konvertierungs-Tool auch Access einsetzen - ist nicht sauber, kann aber unter Umständen viel Arbeit ersparen.

Gruß

bei Antwort benachrichtigen
xafford Herr-Rossi „Hi Günter, mit .dbf könntest Du z.B. das alte dbase-Format meinen, wobei es...“
Optionen

Sorry, aber dBase ist KEINE Sql-Datenbank, dBase ist eine rein Dateibasierte Lösung ohne jegliche SQL-Syntax oder Datenbankengine, es ist sozusagen ein besseres CSV. Hier ein kleiner Auszug aus PHP.NET


There is no support for indexes or memo fields. There is no
support for locking, too. Two concurrent webserver processes
modifying the same dBase file will very likely ruin your database.

dBase files are simple sequential files of fixed length records.
Records are appended to the end of the file and delete records
are kept until you call dbase_pack().

We recommend that you do not use dBase files as your production
database. Choose any real SQL server instead; MySQL or Postgres
are common choices with PHP. dBase support is here to allow you
to import and export data to and from your web database, because
the file format is commonly understood by Windows spreadsheets
and organizers.


Es gibt einige Konverter für dBase in andere Formate, Access und Excel oder ein Pendant aus OpenOffice ginge auch, um dbf z.B. in CSV Daten zu konvertieren und per PHP-Admin in eine MySQL-Datenbank einzulesen.

Es gibt auch Funktionen für PHP, die dies erledigen. Eine rudimentäre hab ich dafür auch mal geschrieben, mit einer aus dem Internet dürftest Du allerdings besser bedient sein, da meine Version speziell auf Artikeldaten eines Großhändlers abgestimmt waren.

[Diese Nachricht wurde nachträglich bearbeitet.]
Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
Herr-Rossi xafford „Sorry, aber dBase ist KEINE Sql-Datenbank, dBase ist eine rein Dateibasierte...“
Optionen

Hi Xafford,

ich kann mich ja nun nicht zurückhalten: Was soll an dBase keine SQL-Datenbank gewesen sein?

Seit dBase IV wird in dBase auch SQL als Abfragesprache verwendet. OK, auch wenn dBase IV buggy war und unter DOS lief - es war eine relationale Datenbank. Und soweit ich weiß, speichern auch die heutigen Datenbanken Daten in ein File-System, oder? Natürlich ist damals auf ein Locking kein Wert gelegt worden - aber hallo, das war Ende der 80er / Anfang der 90er, da hatte nicht jeder ein Netzwerk laufen und einen verteilten Datenzugriff. Außerdem will trainspotter auch nur Daten exportieren und dBase nicht als Produktiv-System verwenden.

Aber bevor hier ein akademischer Streit über Datenbanken ausbricht noch einen schönen Abend

bei Antwort benachrichtigen
xafford Herr-Rossi „Hi Xafford, ich kann mich ja nun nicht zurückhalten: Was soll an dBase keine...“
Optionen

Du meinst eventuell ein Programm, welches mit dBase-Dateien gearbeitet hat und SQL-Syntax unterstützte, aber bei SQL-Datenbanken hat man einen Serverprozess, der Daten in Binärbäumen organisiert, dBase selbst ist eigentlich nur ein reines Dateiformat.
Aber ehrlich gesagt hast Du recht, es ist vollkommen unerheblich. Dir auch noch ne gute Nacht :o)

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
trainspotter xafford „Du meinst eventuell ein Programm, welches mit dBase-Dateien gearbeitet hat und...“
Optionen

wie es aussieht, muß ich mich erst mal mit SQL-Datenbanken beschäftigen. Habe mir dazu mysql 4.0 heruntergeladen und versuche das nun zum Laufen zu bringen.
Vielleicht gibt es ja irgendwo eine einfach gehaltene Einführung. Für einen Link bin ich immer dankbar.

Glück auf!

Günter

bei Antwort benachrichtigen
xafford trainspotter „Danke für die Antworten, aber“
Optionen

Schau mal hier.

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen