MySQL mit php-script füllen

MySQL mit php-script füllen

am 28.06.2005 17:29:05 von Michael Volk

Hallo Leute!

Ich habe folgendes Problemchen:
Ich sammele mit einem VB-Programm Daten und erstelle ein php-script,
das auf den interessanten Teil gekürzt folgendermassen aussieht:

drop table xyz...
create table xyz....

danach folgen jede Menge (ca. 50000) INSERTS in diese Tabelle.
Ist das Script abgelaufen und ich schaue mir die Tabelle mit phpMyAdmin an,
hat die Tabelle bei jedem Versuch eine andere Grösse.
Entweder sind nur Teile der Inserts enthalten, oder aber mehrere doppelt!

Überlade ich die sql-maschiene mit diesen inserts?
Gibt es eine bessere Möglichkeit, per php grosse Datenmengen auf einmal
in eine mysql-datenbank zu ladden?

Danke,
Micha

Re: MySQL mit php-script füllen

am 28.06.2005 17:43:40 von Christian Schmelzer

Michael Volk wrote:
> Hallo Leute!
>
> Ich habe folgendes Problemchen:
> Ich sammele mit einem VB-Programm Daten und erstelle ein php-script,
> das auf den interessanten Teil gekürzt folgendermassen aussieht:
>
> drop table xyz...
> create table xyz....
>
> danach folgen jede Menge (ca. 50000) INSERTS in diese Tabelle.
> Ist das Script abgelaufen und ich schaue mir die Tabelle mit
> phpMyAdmin an, hat die Tabelle bei jedem Versuch eine andere Grösse.
> Entweder sind nur Teile der Inserts enthalten, oder aber mehrere
> doppelt!
>
> Überlade ich die sql-maschiene mit diesen inserts?
> Gibt es eine bessere Möglichkeit, per php grosse Datenmengen auf
> einmal
> in eine mysql-datenbank zu ladden?
>
> Danke,
> Micha

Hallo,
z.B. mit exec ("mysql -u user -ppass < meinsql.sql");
So ungefähr jedenfalls.
Christian

Re: MySQL mit php-script füllen

am 28.06.2005 18:21:13 von Marian Heddesheimer

On Tue, 28 Jun 2005 17:29:05 +0200, Michael Volk wrote:

>danach folgen jede Menge (ca. 50000) INSERTS in diese Tabelle.

kleiner Tipp:

mit einem INSERT kannst du auch mehr als einen Datensatz einfügen.

Ich würde mal Blöcke zu je 100 Datensätzen machen, um die Connection
zur Datenbank nicht allzu häufig zu öffnen.

Darüberhinaus ist das Einfügen per Batch (z.B. über Kommandozeile)
sicher die bessere Wahl.

Möglich wäre auch (gerade bei so großen Datenmengen) das Einlesen über
LOAD DATA INFILE

Marian

--
Barrierefreie Online-Kurse: HTML, PHP, MySQL, Word, Excel
http://www.lernpilot.de/wbt/

Re: MySQL mit php-script füllen

am 28.06.2005 23:42:36 von Michael Volk

Hi!
Das Problem ist, ich brauche ein 'einfachuser-Ein-Taste-Lösung', wie die
MySQL-Datenbank ihr Update bekommt.
Ich habe auf die MySQL-Datenbank nur Zugriff per php bzw phpMyAdmin.
Herkunft sind diverse access-Datenbanken die ich im Moment per VB Abfrage,
ein php-script mit INSERTS erstelle, per ftp uploade und dann das php-script
starte.
Hat vielleicht jemand eine bessere Idee?

Danke und Gruss,
Micha



"Marian Heddesheimer" <220605.8.nolink@spamgourmet.com> schrieb im
Newsbeitrag news:01u2c11rdtd0j4efsl2arebi2sqo81fq0i@4ax.com...
> On Tue, 28 Jun 2005 17:29:05 +0200, Michael Volk wrote:
>
>>danach folgen jede Menge (ca. 50000) INSERTS in diese Tabelle.
>
> kleiner Tipp:
>
> mit einem INSERT kannst du auch mehr als einen Datensatz einfügen.
>
> Ich würde mal Blöcke zu je 100 Datensätzen machen, um die Connection
> zur Datenbank nicht allzu häufig zu öffnen.
>
> Darüberhinaus ist das Einfügen per Batch (z.B. über Kommandozeile)
> sicher die bessere Wahl.
>
> Möglich wäre auch (gerade bei so großen Datenmengen) das Einlesen über
> LOAD DATA INFILE
>
> Marian
>
> --
> Barrierefreie Online-Kurse: HTML, PHP, MySQL, Word, Excel
> http://www.lernpilot.de/wbt/

Re: MySQL mit php-script füllen

am 29.06.2005 06:31:58 von Marian Heddesheimer

On Tue, 28 Jun 2005 23:42:36 +0200, Michael Volk wrote:

>Das Problem ist, ich brauche ein 'einfachuser-Ein-Taste-Lösung', wie die
>MySQL-Datenbank ihr Update bekommt.

wer braucht das nicht ;-)

>Ich habe auf die MySQL-Datenbank nur Zugriff per php bzw phpMyAdmin.
>Herkunft sind diverse access-Datenbanken die ich im Moment per VB Abfrage,
>ein php-script mit INSERTS erstelle, per ftp uploade und dann das php-script
>starte.
>Hat vielleicht jemand eine bessere Idee?

per VB die Daten als Komma-separated exportieren, per ftp uploaden und
in einem PHP-Skript mit LOAD DATA INFILE in MySQL wieder einlesen.

Marian

--
Barrierefreie Online-Kurse: HTML, PHP, MySQL, Word, Excel
http://www.lernpilot.de/wbt/

Re: MySQL mit php-script füllen

am 29.06.2005 09:06:17 von do.not.REMOVETHAT

Michael Volk schrieb:

> Das Problem ist, ich brauche ein 'einfachuser-Ein-Taste-Lösung', wie die
> MySQL-Datenbank ihr Update bekommt.

SSH, MyODBC.

> Ich habe auf die MySQL-Datenbank nur Zugriff per php bzw phpMyAdmin.

Du bräuchtest Zugriff über das Netzwerk direkt auf die Datenbank.

> Herkunft sind diverse access-Datenbanken die ich im Moment per VB Abfrage,
> ein php-script mit INSERTS erstelle, per ftp uploade und dann das php-script
> starte.

Mit Access kann man wunderbar MySQL-Tabellen verknüpfen. Alles, was ein
auto_increment und ein timestamp hat fühlt sich fast an als sei es eine
ganz normale Access-Tabelle.

Grüße, Matthias

-->hat nix mit PHP zu tun, f^2p

--
"Hurd will be out in a year"
(Linus Benedict Torvalds, 5. Oktober 1991)
http://groups-beta.google.com/group/comp.os.minix/msg/2194d2 53268b0a1b