MySQL 与 Python 语法
你好,未来的程序员们!今天,我们将踏上一段激动人心的旅程,进入 MySQL 和 Python 的世界。作为你友好的计算机老师,我将在这一过程中一步步引导你。如果你之前从未编写过一行代码,也不用担心——我们将从最基础的内容开始,一起逐步学习。
安装 "python-mysql" 连接器
在我们开始使用 Python 操作 MySQL 之前,我们需要安装一个特殊的工具,称为连接器。可以将其视为允许 Python 与 MySQL 数据库通信的桥梁。让我们开始吧!
第一步:安装 Python
首先,确保你的计算机上安装了 Python。如果没有,请前往 Python 官方网站(python.org)并下载适用于你操作系统的最新版本。
第二步:安装 MySQL 连接器
现在,让我们安装 MySQL 连接器。打开你的命令提示符或终端,并输入以下命令:
pip install mysql-connector-python
按下 Enter 键,让魔法发生!这个命令告诉 pip(Python 的包安装程序)为我们下载并安装 MySQL 连接器。
Python 函数以访问 MySQL
现在我们安装了连接器,让我们看看一些我们将用来操作 MySQL 数据库的函数。我喜欢将这些函数视为我们编程魔法书中的特殊咒语!
以下是在 Python 中最常用的 MySQL 函数表格:
函数 | 描述 |
---|---|
mysql.connector.connect() |
创建到 MySQL 数据库的连接 |
connection.cursor() |
创建一个游标对象来执行 SQL 查询 |
cursor.execute() |
执行一个 SQL 查询 |
cursor.fetchone() |
获取查询结果的下一行 |
cursor.fetchall() |
获取查询结果的所有行 |
connection.commit() |
提交当前的事务 |
cursor.close() |
关闭游标 |
connection.close() |
关闭数据库连接 |
如果这些现在看起来有些神秘,不用担心。我们将在接下来的学习中逐一详细探讨。
基本示例
现在,让我们通过一个基本示例将我们所学到的知识付诸实践。我们将连接到 MySQL 数据库,创建一个表,插入一些数据,然后检索它。激动人心吧?让我们开始吧!
import mysql.connector
# 第一步:建立到 MySQL 数据库的连接
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
# 第二步:创建一个游标对象
mycursor = mydb.cursor()
# 第三步:创建一个表
mycursor.execute("CREATE TABLE students (name VARCHAR(255), age INTEGER)")
# 第四步:向表中插入数据
sql = "INSERT INTO students (name, age) VALUES (%s, %s)"
val = ("John Doe", 25)
mycursor.execute(sql, val)
# 第五步:提交更改
mydb.commit()
# 第六步:从表中检索数据
mycursor.execute("SELECT * FROM students")
result = mycursor.fetchall()
# 第七步:打印结果
for x in result:
print(x)
# 第八步:关闭游标和连接
mycursor.close()
mydb.close()
现在,让我们一步一步分解这个过程:
第一步:建立连接
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
这就好比敲响我们 MySQL 数据库的门,说:“嘿,我是 Python!我能进来吗?”我们提供必要的信息(主机、用户名、密码和数据库名)来建立连接。
第二步:创建游标
mycursor = mydb.cursor()
游标就像我们的魔法棒。我们将用它来对数据库施展我们的 SQL 咒语(执行查询)。
第三步:创建表
mycursor.execute("CREATE TABLE students (name VARCHAR(255), age INTEGER)")
在这里,我们使用游标创建一个名为 "students" 的新表,其中包含两个字段:“name”(可以容纳最多 255 个字符的文本)和“age”(存储整数)。
第四步:插入数据
sql = "INSERT INTO students (name, age) VALUES (%s, %s)"
val = ("John Doe", 25)
mycursor.execute(sql, val)
现在我们在表中添加一个学生。我们使用 %s 作为我们值的占位符,这有助于防止 SQL 注入攻击(这是另一个话题的内容)。
第五步:提交更改
mydb.commit()
这一行就像按下“保存”按钮。它告诉 MySQL 永久保存我们所做的更改。
第六步:检索数据
mycursor.execute("SELECT * FROM students")
result = mycursor.fetchall()
在这里,我们请 MySQL 展示我们 "students" 表中的所有数据。fetchall()
函数抓取所有结果。
第七步:打印结果
for x in result:
print(x)
这个循环遍历我们的结果中的每一行并打印出来。就像打开一本书并阅读每一行。
第八步:关闭连接
mycursor.close()
mydb.close()
最后,我们关闭游标和数据库连接。记住,当你完成后,总是要记得关门!
就这样!你刚刚编写了你的第一个与 MySQL 数据库交互的 Python 程序。记住,学习编码就像学习一门新语言——它需要练习和耐心。如果你一开始不理解所有内容,不要气馁。继续尝试,在你意识到之前,你将能够编写复杂的数据库应用程序!
在我们的下一课中,我们将更深入地探讨使用 Python 进行更高级的 MySQL 操作。在此之前,祝编码愉快!
Credits: Image by storyset