Py学习  »  Python

Python如何链接MySQL?

21ic电子网 • 4 年前 • 454 次点击  


在python程序里,如何链接MySQL数据库?


连接MYSQL需要3步

1、安装

必须先安装MySQL驱动。和PHP不一样,Python只默认安装了SQLite的驱动。最常用的包是MySQLdb但是用easy_install安装很困难。

对于Window用户,你可以获取MySQLdb的exe。

对于Linux,可以下载python-mysqldb(可以用sudo apt-get install python-mysqldb命令直接在命令行下载)

对于Mac用户,可以用Macport下载MySQLdb

2、使用

装完之后重启。这样做可以减少问题。

然后就像用其他包一样:

  1. #!/usr/bin/python

  2. importMySQLdb


  3. db =MySQLdb.connect(host="localhost",# your host, usually localhost

  4. user="john",# your username

  5. passwd="megajonhy",# your password

  6. db="jonhydb")# name of the data base


  7. # you must create a Cursor object. It will let

  8. # you execute all the queries you need

  9. cur = db.cursor()


  10. # Use all the SQL you like

  11. cur.execute("SELECT * FROM YOUR_TABLE_NAME")


  12. # print all the first cell of all the rows

  13. for row in cur.fetchall():

  14. print row[0]

还有很多用法和选项,这里只举了一个基本的例子。

3、高级用法

一旦你知道它是如何工作的,你可能想用ORM来避免手动写入SQL,来把表变成Python对象。Python中最有名的ORM叫做SQLAlchemy(强烈推荐

最近在Python里发现了一个好东西:peewee。它是个非常轻巧的ORM,非常容易安装和使用。一些小项目和独立app都可以使用它,像SQLLAlchemy或者Django用在这里有点小题大做了:

  1. import peewee

  2. from peewee import*


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


  4. classBook(peewee.Model):

  5. author = peewee.CharField()

  6. title = peewee.TextField()


  7. classMeta:

  8. database = db


  9. Book.create_table()

  10. book =Book(author="me", title='Peewee is cool')

  11. book.save()

  12. for book inBook.filter(author="me"):

  13. print book.title


  14. Peeweeis cool

按上边操作即可运行,除了peewee(pip install peewee)不需要别的的操作。安装非常简单。


来源:Python编程学习圈

版权归原作者所有,如有侵权,请联系删除。
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/119444