1283 Stimmen

Wie verbinde ich mich mit einer MySQL-Datenbank in Python?

Wie kann ich mit einem Python-Programm eine Verbindung zu einer MySQL-Datenbank herstellen?

50 Stimmen

Die meisten Antworten hier konzentrieren sich auf die Installation der MySQLdb-Bibliothek. Ich würde wirklich empfehlen, sich für den von MySQL/Oracle bereitgestellten MySQL Connector/Python zu entscheiden, der den Prozess viel einfacher macht: stackoverflow.com/questions/372885/

10 Stimmen

Das Problem bei der Verwendung von Oracle's Connector/Python ist, dass es subtile Bugs und andere Integrationsprobleme gibt. Er ist einfach zu installieren, aber für alle realen Anwendungsfälle, für die ich ihn ausprobiert habe, fast unmöglich zum Laufen zu bringen. Aus diesem Grund empfehle ich immer MySQLdb.

8 Stimmen

@Mr.Napik Ich benutze pymysql weil es sich um ein reines freies Python handelt, das nach dieser Vergleich .

1voto

Haider Ali Punkte 47

Können Sie Ihren Python-Code auf diese Weise mit Mysql verbinden.

import MySQLdb
db = MySQLdb.connect(host="localhost",
                 user="appuser",
                 passwd="",
                 db="onco")

cursor = db.cursor()

0voto

Installieren Sie zunächst den Treiber (Ubuntu)

  • sudo apt-get install python-pip

  • sudo pip install -U pip

  • sudo apt-get install python-dev libmysqlclient-dev

  • sudo apt-get install MySQL-python

MySQL-Datenbank-Verbindungscodes

import MySQLdb
conn = MySQLdb.connect (host = "localhost",user = "root",passwd = "pass",db = "dbname")
cursor = conn.cursor ()
cursor.execute ("SELECT VERSION()")
row = cursor.fetchone ()
print "server version:", row[0]
cursor.close ()
conn.close ()

0voto

Vishvajit Pathak Punkte 2773

Installieren Sie zunächst den Treiber

pip install MySQL-python   

Ein einfacher Code sieht dann so aus:

#!/usr/bin/python
import MySQLdb

try:
    db = MySQLdb.connect(host="localhost",      # db server, can be a remote one 
                     db="mydb"                  # database
                     user="mydb",               # username
                     passwd="mydb123",          # password for this username
                     )        

    # Create a Cursor object
    cur = db.cursor()

    # Create a query string. It can contain variables
    query_string = "SELECT * FROM MY_TABLE"

    # Execute the query
    cur.execute(query_string)

    # Get all the rows present the database
    for each_row in cur.fetchall():
        print each_row

    # Close the connection
    db.close()
except Exception, e:
    print 'Error ', e

0voto

Lazik Punkte 2310

Für Python 3.3

CyMySQL https://github.com/nakagami/CyMySQL

Ich habe pip auf meinem Windows 7 installiert, nur pip install cymysql

(Sie brauchen kein Cython) schnell und schmerzlos

3 Stimmen

Sie könnten eine neue Frage auf SO erstellen und mit einem Link zu dieser Frage hier kommentieren.

-4voto

Aditya Agrawal Punkte 23

Installieren Sie zunächst den python-mysql-Connector aus https://dev.mysql.com/downloads/connector/python/

auf der Python-Konsole eingeben:

pip install mysql-connector-python-rf
import mysql.connector

3 Stimmen

Die Frage war ein wenig zu weit gefasst, aber diese Antwort scheint ein wenig zu eng gefasst zu sein (zumindest in dem Sinne, dass die Installation und der Import eines Moduls allein nicht ausreicht). Außerdem scheinen Shell und Python in einem einzigen Codeblock vermischt zu sein, ohne dass erklärt wird, was wohin gehört und was getan wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X