#!/usr/bin/python
import MySQLdb
db = MySQLdb.connect(host="localhost", # tu host, usualmente localhost
user="john", # tu usuario
passwd="megajonhy", # tu password
db="jonhydb") # el nombre de la base de datos
# Debes crear un objeto Cursor. Te permitirá
# ejecutar todos los queries que necesitas
cur = db.cursor()
# Usa todas las sentencias SQL que quieras
cur.execute("SELECT * FROM TU_TABLA")
# Imprimir la primera columna de todos los registros
for row in cur.fetchall():
print row[0]
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
import MySQLdb
db = MySQLdb.connect(passwd="moonpie",db="thangs")
c = db.cursor()
max_price = 5
c.execute("""
SELECT spam, eggs, sausage
FROM breakfast
WHERE price < %s
""", (max_price,))
# no hay que olvidarse de liberar el cursor y la conexión para evitar fugas de memoria
c.close()
db.close()
建立连接的另一种更Pythonic的方式是通过with 语句,它负责确保正确释放连接:
import MySQLdb
max_price = 5
with MySQLdb.connect(passwd="moonpie",db="thangs") as conexion:
consulta_sql = "SELECT spam, eggs, sausage FROM breakfast WHERE price < %s"
parametros = (max_price,)
cursor = conexion.execute(consulta_sql, parametros)
for registro in cursor:
print(registro)
通过 3 步使用 Python 连接到 MySQL
配置:
在执行任何操作之前,您必须安装 MySQL 驱动程序。与 PHP 不同的是,Python 默认只安装 SQLite 的驱动程序。最常用的包是MySQLdb,但使用
easy_install
.对于 Windows 用户,您可以下载MySQLdb exe。
对于 Linux,它是一个临时包 (
python-mysqldb
)。您可以在命令行上使用sudo apt-get install python-mysqldb
基于 Debian 的发行版或yum install mysql-python
基于 RPM 的发行版。对于 MAC,您可以使用 Macport 安装 MySQLdb。
利用:
安装后,重新启动系统。这不是必需的,但如果出现问题,它会阻止您回答另外 3 或 4 个问题。所以请重新启动。
然后就像使用任何其他包一样:
当然有成千上万种可能性和选择;这是一个非常基本的例子。您必须阅读文档。一个好的起点。
更高级的用法:
一旦你知道它是如何工作的,你就可以使用ORM来避免手动编写 SQL 语句并像操作 Python 对象一样操作表。Python 社区中最著名的 ORM 是SQLAlchemy。
我真的推荐你使用它——你的生活会更轻松。
我最近在 Python 世界中发现了另一个宝石:peewee。这是一个相当轻量级的 ORM,配置和使用非常简单和快速。它在小型项目或独立应用程序中帮助了我很多,在这些应用程序中,SQLAlchemy 和 Django 等大型工具的使用可能过多:
此示例用作可用性示例。只需要安装
peewee
(pip install peewee
:-)) 即可。没有复杂的设置。太棒了。原答案:
如果您使用的是当前版本的 Python,则另一种选择是使用mysqlclient,它是 MySQLdb1 的一个分支,支持 Python 2.7 和 >3.3。
设施:
从命令行:
例子:
建立连接的另一种更Pythonic的方式是通过with 语句,它负责确保正确释放连接:
链接: