Python und Mysql?

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Hallo,
ich blicke wiedermal nicht mehr durch :-( Auch die Suche hier im Forum brachte mich nicht weiter.
Ich wollte über python auf meine Mysql Datenbank zugreifen. Da war ich sehr verwundert, dass es dafür keine eingebauten module gibt?? Ich habe nur Projekte wie python-mysql gefunden. Warum hat da Python nichts eigenes? Im Zusammenhang mit python-mysql wird dann auch die Seite http://www.python.org/peps/pep-0249.html genannt. Da habe ich auch nicht ganz durchgeblickt ;-) Was beschreibt diese Seite?
Und was ich auch nicht rausgefunden habe: wie kann ich in Python dann auf ODBC zugreifen?
Danke
ein verwirrter Stolzi
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Wie ich python-mysql verwende ist mir eigentlich schon klar. Mir gings mehr um die geschilderten Grundsatzfragen.
Danke
Stolzi
RainBowBender
User
Beiträge: 53
Registriert: Dienstag 6. April 2004, 10:33

Der PEP (Python verbesserungsvorlschlag definiert eine API für alle Datenbankmodule.

Dies soll es für Programmierer einfacher machen zwischen verschiedenen Datenbanksystemen zu wechseln.
Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Hab ich nicht ganz verstanden.
heisst das, dass ein Vorschlag existiert, dass Module für den Datenbankzugriff in Python eingebracht werden?
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Soweit ich das verstanden habe, ist PEP 249 eine Anleitung (Specification = Beschreibung, Vorschrift), wie ein Datenbankmodul aufgebaut sein soll.

Gruß, mawe
Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Also heisst das dann vermutlich im Klartext es gibt noch kein Modul von Python, bis Dato nur die Anleitung, oder?
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi Stolzi!

Es gibt schon welche, die hier halten sich an die Spezifikation, diese hier nicht.
Hier hast Du noch Info zu ODBC. Alles zusammen findes Du hier.
Stolzi hat geschrieben: Also heisst das dann vermutlich im Klartext es gibt noch kein Modul von Python...
Die sind ja alle von Python (für Python), oder meinst Du warum keines bei Python von Haus aus dabei ist. Keine Ahnung.

Gruß, mawe
joerg
User
Beiträge: 188
Registriert: Samstag 17. August 2002, 17:48
Wohnort: Berlin
Kontaktdaten:

Jetzt wird es aber etwas wirr hier. ;-)

Es gibt einen Standard für eine allgemeine Datenbankschnittstelle in Python (aktuell DB-API 2). Dieser Standard ist in einer Vielzahl von Modulen implementiert, um mit möglichst keinen oder wenig Änderungen auf fast alle gängigen Datenbanken zugreifen zu können.

Alles weitere z.B. hier: http://python.org/topics/database/

Jörg

PS: Mit PEP ist es wie mit RFC: aus einem Vorschlag entwickelt sich eben eine Spezifikation, der eigentliche Name ist dann nachher etwas irreführend.

PPS: Mal wieder mehrere Antworten parallel, mawe war schneller ... ;-)
"Sie sind nicht berechtigt, unrechtmäßige Kopien dieses Datenträgers zu erstellen." - Microsoft-Weisheit auf einer CD von MS-VisualC++-6.0
Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Ja genau mir ging es darum warum nichts bei "Python von Haus aus" dabei ist. Kompliziert ;-)
Ich dachte vor allem darüber nach, denn wenn ich nun eine stand alone Software programmiere, dann muss ich nicht nur dafür sorgen, dass die richtige Python Version installiert ist, ich muss auch noch darauf achten, dass die richtige python-mysql Version und was sonst noch alles aufm Rechner ist. Deshalb hätte ich eben lieber etwas verwendet das bei "Python von Haus aus" dabei ist.
Danke für die Erklärungsversuche ;-)
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi Stolzi,

es gibt ja ein paar Datenbanksachen die bei Python schon dabei sind:
anydbm dbhash bsddb dumpdbm
Einige von denen benötigen aber auch die installation der entsprechenden Datenbanklibs. Für SQL-Datenbanken gibts Interfaces die oft schon bei der Datenbankinstallation dabei sind, postgres z.B.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
Antworten