Python 3 + MySQL

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
dougal
User
Beiträge: 12
Registriert: Samstag 25. Juli 2009, 16:50

Hallo Forum!

Ich habe mir vor ein paar Tagen Python 3 angeschaut und versuche nun ein Problem damit zu lösen. Leider bin ich an dem Punkt angelangt andem ich die verarbeitende Daten in eine MySQL-DB reinschieben will.

Alle bisherigen Module die ich gefunden habe, scheinen nur auf Python 2.X zu laufen.

Frage: Gibt es irgendeine Möglichkeit unter Python 3 auf MySQL zuzugreifen?
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

http://mysql-python.blogspot.com/2009/0 ... ation.html

Vielleicht ist auch sqlite eine Alternative?
Pyccak
User
Beiträge: 8
Registriert: Mittwoch 30. Dezember 2009, 16:39

Ich hab probleme mysqldb unter python 2.6. Gibst da eine Lösung dafür?

Hier genaueres: http://www.python-forum.de/topic-21386.html
dougal
User
Beiträge: 12
Registriert: Samstag 25. Juli 2009, 16:50

So... ich hatte mittlerweile eine Idee um doch Daten von Python3 auf Mysql zu bringen.

Hier schreib ich nun mal, wie ich das gemacht habe:

Ich habe zwei Rechner hier. Den einen nenn ich mal "Paris" (mit P wie Python) und den anderen nenn ich mal "Macao" (mit M wie Mysql)
Auf Paris befindet sich das Python-Programm. Auf Macao ein Mysql-Server mit PHP und Apache. Nun kommt der Datenflow:
  1. Auf Paris hab ich das Python3.1-Programm am laufen, was irgendwas lustiges macht.
  2. Die Daten die Python generiert und ins Mysql sollen, werden als CSV-Datei auf Paris abgespeichert.
  3. Dann versucht Paris die Daten an Macao zu schicken. Per HTTP sendet die Daten an ein PHP Script.
  4. Das PHP-Script speichert die Datei auf Macao.
  5. Wenn das erledigt wurde, gibt Macao an Paris eine Antwort.
  6. Wenn die Antwort positiv war ruft Paris ein weiteres PHP-Script auf Macao auf.
  7. In diesem PHP-Script wird eine vorbereitete MYSQL-Query mit "LOAD DATA INFILE" auf die CSV-Datei die sich auf Macao befindet ausgeführt. Dieses importiert dann die Daten in die MySQL-Tabelle. (das mit dem LoadData in File funktioniert allerdings nur, wenn man die FILE-Rechte auf der MYSQL hat.) Das könnte bei Webprovidern probleme geben. Deshalb müsste man in diesem Schritt sich nochmal überlegen per PHP die CSV auszulesen und dann ganz normale "INSERT INTO" auf die MYSQL zu machen.
Tja... so hab ich das gelöst... sicher kann man das Ganze auf einem System zum Laufen bringen und sicher kann man sich das mit HTTP senden ersparen und es per FTP erledigen oder einfachem Dateikopieren.
Antworten