如何在Python中连接MySQL数据库?

问题:

如何使用python程序连接到MySQL数据库?

回答:

使用Python连接到MYSQL 3个步骤
1 – 设置
在做任何事情之前,你必须安装一个MySQL驱动。与PHP不同,默认情况下仅使用Python安装SQLite驱动程序。最常用的包是MySQLdb,但是很难使用easy_install安装它。
对于Windows用户,您可以获得exe of MySQLdb
对于Linux,这是一个安装包(python-mysqldb)。 (您可以在命令行中使用sudo apt-get install python-mysqldb(用于基于debian的发行版),yum install MySQL-python(以rpm为基础)或dnf install python-mysql(用于现代fedora发行版)。)
对于Mac,您可以install MySQLdb using Macport
2 – 使用
安装完成后重启。这不是强制性的,但如果发生错误,将阻止我在这篇文章中回答3或4个其他问题。所以请重新启动。
那就像使用另一个包:
class=”lang-py prettyprint-override”>

#!/usr/bin/python
import MySQLdb

db = MySQLdb.connect(host="localhost",    # your host, usually localhost
                     user="john",         # your username
                     passwd="megajonhy",  # your password
                     db="jonhydb")        # name of the data base

# you must create a Cursor object. It will let
#  you execute all the queries you need
cur = db.cursor()

# Use all the SQL you like
cur.execute("SELECT * FROM YOUR_TABLE_NAME")

# print all the first cell of all the rows
for row in cur.fetchall():
    print row[0]

db.close()

当然,有千种可能性和选择;这是一个非常基本的例子。您将需要查看文档。 A good starting point
3 – 更多高级的用法
一旦你知道它是如何工作的,你可能希望使用ORM来避免手动写入SQL,并将它们作为Python对象来处理。 Python社区中最着名的ORM是SQLAlchemy
我强烈建议你使用它:你的生活会变得更加容易。
我最近在Python世界中发现了另一个宝石:peewee。这是一个非常轻松的ORM,真的很容易和快速的设置然后使用。它使我的小项目或独立应用程序的一天,使用像SQLAlchemy或Django这样的大工具是过度的:
class=”lang-py prettyprint-override”>

import peewee
from peewee import *

db = MySQLDatabase('jonhydb', user='john',passwd='megajonhy')

class Book(peewee.Model):
    author = peewee.CharField()
    title = peewee.TextField()

    class Meta:
        database = db

Book.create_table()
book = Book(author="me", title='Peewee is cool')
book.save()
for book in Book.filter(author="me"):
    print book.title

Peewee is cool

此示例开箱即用。除了peewee(pip install peewee :-))之外没有其他要求。没有复杂的设置。这个真的很酷。

 

翻译整理: Code问答

英文原文:stackoverflow

发表评论

电子邮件地址不会被公开。 必填项已用*标注

+ 36 = 38