原文: https://pythonspot.com/mysql-with-python

在本教程中,您将学习如何在 Python 中使用广泛使用的数据库管理系统,称为 MySQL。您不需要使用 MySQL 的任何先验知识即可使用本教程,但是,除了本简短的入门教程所涵盖的内容外,MySQL 还有很多其他内容。

MySQL 教程

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

步骤 1:安装 MySQL

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

在 Windows 上:

使用安装程序安装 MySQLdb

在 Linux 上:

使用以下命令安装 MySQLdb:

  1. sudo apt-get install python-mysqldb
  2. yum install mysql-python

取决于您的版本。

在 Mac 上:

按照 stackoverflow 的安装说明

必须先运行 MySQL 服务器,然后再进行下一步。

步骤 2:设置数据库

确保您具有数据库访问权限,可从命令行输入:

  1. mysql -u USERNAME -p

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

  1. mysql> CREATE DATABASE pythonspot;
  2. mysql> USE pythonspot;

我们继续创建表:

  1. CREATE TABLE IF NOT EXISTS examples (
  2. id int(11) NOT NULL AUTO_INCREMENT,
  3. description varchar(45),
  4. PRIMARY KEY (id)
  5. );

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

  1. INSERT INTO examples(description) VALUES ("Hello World");
  2. INSERT INTO examples(description) VALUES ("MySQL Example");
  3. INSERT INTO examples(description) VALUES ("Flask Example");

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

  1. mysql> SELECT * FROM examples;
  2. +----+---------------+
  3. | id | description |
  4. +----+---------------+
  5. | 1 | Hello World |
  6. | 2 | MySQL Example |
  7. | 3 | Flask Example |
  8. +----+---------------+
  9. 3 rows in set (0.01 sec)

步骤 3:从 Python 获取数据

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

  1. #!/usr/bin/python
  2. import MySQLdb
  3. db = MySQLdb.connect(host="localhost", # your host
  4. user="root", # username
  5. passwd="root", # password
  6. db="pythonspot") # name of the database
  7. # Create a Cursor object to execute queries.
  8. cur = db.cursor()
  9. # Select data from table using SQL query.
  10. cur.execute("SELECT * FROM examples")
  11. # print the first and second columns
  12. for row in cur.fetchall() :
  13. print row[0], " ", row[1]

输出:

  1. Hello World
  2. MySQL Example
  3. Flask Example