2009-03-07 7 views
0

J'ai essayé depuis plusieurs heures de trouver une méthode de travail pour accéder à une base de données mysql en python. La seule chose que j'ai réussi à compiler et à installer est pyodbc mais le pilote nécessaire n'est pas disponible pour ppc leopard. Je connais déjà this.Accéder à une base de données MySQL à partir de python

MISE À JOUR:
J'ai installé setuptools, mais maintenant MySQL-python ne sera pas généré.

MISE À JOUR: Maintenant, j'ai sqlalchemy à installer, mais alors qu'il apparaîtra lorsqu'il est appelé par la ligne de commande, il ne sera pas importé lorsqu'il est utilisé dans mon script cgi.

+0

Qu'est-ce qui ne va pas dans la solution fournie dans le lien? –

+0

J'ai essayé MySQLdb et il ne compilera pas. Aussi je voulais éviter qu'il soit signalé comme un doublon. – GameFreak

+0

Donc, la question devrait être "pourquoi ne pas compiler MySQLdb": p –

Répondre

1

Installez fink. Il inclut le paquet MySQLdb.

+0

Je vois postgresql mais pas mysql. – GameFreak

+0

J'ai également essayé macports mais cela a commencé à installer sa propre version de mysql. – GameFreak

+0

Comme la plupart des gestionnaires de paquets, MacPorts est conçu pour offrir une solution complète - pas des pièces. –

2

Essayez SQL Alchemy.

C'est génial.

0

UPDATE: Now I've gotten sqlalchemy to install but while it will show up when called by the command line it won't import when used in my cgi script.

Pouvez-vous vérifier que le Python invoqué à partir de votre script CGI est le même que celui que vous obtenez lorsque vous exécutez Python de façon interactive? Vérifiez which python et comparez-le aux paramètres CGI de votre serveur Web. C'est la seule chose à laquelle je peux penser que cela causerait cela - l'installer dans un Python mais pas dans l'autre.

De quel système d'exploitation êtes-vous? Si vous êtes sur quelque chose comme Ubuntu, sudo apt-get install python-mysqldb est beaucoup plus fiable que d'essayer de le construire vous-même. En outre, à moins que je ne me trompe, SQLAlchemy ne vous aidera pas réellement à établir la connexion si vous n'avez pas installé un module DB-API2 (comme python-mysqldb) - SQLAlchemy se trouve au prochain niveau, en utilisant la connexion DB-API2 et en y rendant plus de Pythonic.

Questions connexes