Python 3 MySQL(mysql-connector)学习笔记

概述

MySQL是一个开源的关系型数据库管理系统,被广泛用于Web应用程序的开发中。mysql-connector是Python 3的官方MySQL驱动程序,提供了Python与MySQL之间的交互能力。

本文档旨在帮助Python 3开发者学习如何使用mysql-connector来连接MySQL数据库,并以此为基础实现常见的数据库操作,如查询、插入、更新和删除数据。

安装

要使用mysql-connector,需要先安装它。可以使用pip包管理器进行安装:

Copy Code
pip install mysql-connector-python

建立连接

使用mysql-connector连接MySQL数据库是非常简单的。以下示例展示了如何连接到本地MySQL服务器:

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword" ) print(mydb)

注:请将yourusernameyourpassword替换为您的MySQL用户名和密码。

创建数据库

在连接到MySQL服务器后,您可以创建新的数据库。以下示例展示了如何创建一个名为mydatabase的数据库:

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword" ) mycursor = mydb.cursor() mycursor.execute("CREATE DATABASE mydatabase")

创建表格

在创建数据库之后,您可以创建新的表格。以下示例展示了如何创建一个名为customers的表格:

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() mycursor.execute("CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255))")

插入数据

在创建表格之后,您可以向其中插入数据。以下示例展示了如何将一些客户信息插入到customers表格中:

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "INSERT INTO customers (name, address) VALUES (%s, %s)" val = ("John Smith", "Highway 21") mycursor.execute(sql, val) mydb.commit() print(mycursor.rowcount, "record inserted.")

注:请注意,一旦插入到数据库中,数据就不能更改。如果您需要更新数据,请使用UPDATE语句。

查询数据

在插入数据之后,您可以从表格中检索数据。以下示例展示了如何检索customers表格中所有客户的信息:

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() mycursor.execute("SELECT * FROM customers") myresult = mycursor.fetchall() for x in myresult: print(x)

更新数据

在检索数据之后,您可以更新其中的数据。以下示例展示了如何将address列中nameJohn Smith的客户的地址更新为Canyon 123

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "UPDATE customers SET address = 'Canyon 123' WHERE name = 'John Smith'" mycursor.execute(sql) mydb.commit() print(mycursor.rowcount, "record(s) affected")

删除数据

在插入、检索和更新数据之后,您可以从表格中删除数据。以下示例展示了如何删除customers表格中nameJohn Smith的客户的信息:

pythonCopy Code
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "DELETE FROM customers WHERE name = 'John Smith'" mycursor.execute(sql) mydb.commit() print(mycursor.rowcount, "record(s) deleted")

结论

mysql-connector为Python 3开发者提供了连接到MySQL数据库并执行常见数据库操作的方法。本文档提供了一些基本示例,旨在帮助您快速开始使用此驱动程序。