Python MySQL

在本教程中,你将学习如何在 Python 中使用一种名为 MySQL 的广泛使用的*数据库管理系统*。你不需要任何的 MySQL 知识来使用本教程,但是 MySQL 的内容远远多于这个简短的入门教程。

MySQL 教程

数据存储在一 表中,每个表由一组行和列组成。这与数据在SQLite中的存储方式类似。为了与存储在表中的数据进行交互,我们使用了一种称为 SQL 的专用编程语言。

步骤 1:安装 MySQL

首先必须安装 MySQL 驱动程序,使用下面的具体安装方法。

  • 在 Windows 上:

使用安装程序来安装 MySQLdb。

  • 在 Linux 上:

使用以下命令安装 MySQLdb:

sudo apt-get install python-mysqldb
yum install mysql-python

具体用哪一个取决于你的 Linux 版本。

  • 在 Mac 上:

按照stackoverflow 中的安装说明进行操作。

在进行下一步之前,必须运行 MySQL 服务器。

第 2 步:设置数据库

从命令行类型确保你具有数据库访问权限:

mysql -u USERNAME -p

然后 MySQL 将询问你的密码。输入以下命令:

mysql> CREATE DATABASE pythonspot;
mysql> USE pythonspot;

我们继续创建表:

CREATE TABLE IF NOT EXISTS examples (
  id int(11) NOT NULL AUTO_INCREMENT,
  description varchar(45),
  PRIMARY KEY (id)
);

然后我们可以将数据插入表中(这些是 SQL 查询):

INSERT INTO examples(description) VALUES ("Hello World");
INSERT INTO examples(description) VALUES ("MySQL Example");
INSERT INTO examples(description) VALUES ("Flask Example");

你现在可以使用 SQL 查询从表中获取所有记录:

mysql> SELECT * FROM examples;
+----+---------------+
| id | description   |
+----+---------------+
|  1 | Hello World   |
|  2 | MySQL Example |
|  3 | Flask Example |
+----+---------------+
3 rows in set (0.01 sec)

第 3 步:从 Python 获取数据

你可以使用 MySQLdb 模块直接从 Python 访问数据库。

#!/usr/bin/python
import MySQLdb
 
db = MySQLdb.connect(host="localhost",  # your host 
                     user="root",       # username
                     passwd="root",     # password
                     db="pythonspot")   # name of the database
 cur = db.cursor()
 cur.execute("SELECT * FROM examples")
 for row in cur.fetchall() :
    print row[0], " ", row[1]

输出:

1   Hello World
2   MySQL Example
3   Flask Example