PyMySQL是Python编程语言中的一个第三方模块,它可以让Python程序连接到MySQL数据库并进行数据操作。它的使用非常简单,只需要安装PyMySQL模块,然后按照一定的步骤连接到MySQL数据库即 可。本文将介绍PyMySQL的安装、连接MySQL数据库、创建表、插入数据、查询数据、更新数据和删除数据等基本操作。
一、安装PyMySQL
在使用PyMySQL之前,我们需要先安装PyMySQL模块。可以使用pip命令进行安装
如下所示:
pip install PyMySQL
安装完成后,我们就可以在Python程序中使用PyMySQL模块了。
二、连接MySQL数据库
在使用PyMySQL进行数据库操作之前,我们需要先连接到MySQL数据库。连接MySQL数据库需要指定 数据库的主机名、用户名、密码和数据库名等信息。可以使用PyMySQL中的connect()函数来连接 MySQL数据库
如下所示:
-
import pymysql
-
# 打开数据库连接
-
db = pymysql.connect("localhost", "root", "123456", "test")
-
# 关闭数据库连接
-
db.close()
其中,第一个参数是数据库的主机名,如果数据库在本地,则可以使用localhost或127.0.0.1;第二个参数是数据库的用户名,一般为root;第三个参数是数据库的密码;第四个参数是要连接的数据库名。
连接成功后,我们可以使用cursor()方法获取操作游标,如下所示:
-
# 使用 cursor() 方法创建一个游标对象 cursor
-
cursor = db.cursor()
三、创建表
在创建表之前,我们需要先选择要操作的数据库。可以使用select_db()方法选择要操作的数据库,如下 所示:
-
# 选择要操作的数据库
-
db.select_db("test")
选择数据库后,我们可以使用execute()方法执行SQL语句来创建表。
创建表的SQL语句如下所示:
-
CREATE TABLE `user` (
-
`id` int(11) NOT NULL AUTO_INCREMENT,
-
`name` varchar(20) NOT NULL,
-
`age` int(11) NOT NULL,
-
`gender` varchar(10) NOT NULL,
-
PRIMARY KEY (`id`)
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
其中, user 是表名, id 、name 、age 和 gender 是表的列名, AUTO_INCREMENT 表示自动递增, NOT NULL 表示不能为空, PRIMARY KEY 表示主键。
执行创建表的SQL语句的代码如下所示:
-
# 创建表
-
sql = """
-
CREATE TABLE `user` (
-
`id` int(11) NOT NULL AUTO_INCREMENT,
-
`name` varchar(20) NOT NULL,
-
`age` int(11) NOT NULL,
-
`gender` varchar(10) NOT NULL,
-
PRIMARY KEY (`id`)
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-
"""
-
cursor.execute(sql)
执行完毕后,我们可以使用show_tables()方法查看数据库中的表,如下所示:
-
# 查看数据库中的表
-
cursor.execute("show tables")
-
tables = cursor.fetchall()
-
for table in tables:
-
print(table)
四、插入数据
在插入数据之前,我们需要先准备好要插入的数据。插入数据可以使用execute()方法执行SQL语句,如下所示:
-
# 插入数据
-
sql = "INSERT INTO `user`(`name`, `age`, `gender`) VALUES (%s, %s, %s)"
-
values = ("张三", 18, "男")
-
cursor.execute(sql, values)
其中, %s 表示占位符,后面的values是要插入的数据。执行完毕后,我们可以使用commit()方法提交事务,如下所示:
-
# 提交事务
-
db.commit()
五、查询数据
在查询数据之前,我们需要先准备好要查询的条件。查询数据可以使用execute()方法执行SQL语句,如 下所示:
-
# 查询数据
-
sql = "SELECT * FROM `user` WHERE `name`=%s"
-
values = ("张三",)
-
cursor.execute(sql, values)
-
result = cursor.fetchall()
-
forrow in result: print(row)
其中, SELECT * FROM user WHERE name =%s 表示查询 user 表中名字为 张三 的记录, %s 是占位符, 后面的values是查询条件。执行完毕后,我们可以使用fetchall()方法获取查询结果。
六、更新数据
在更新数据之前,我们需要先准备好要更新的数据和更新条件。更新数据可以使用execute()方法执行 SQL语句,如下所示:
-
# 更新数据
-
sql = "UPDATE `user` SET `age`=%s WHERE `name`=%s"
-
values = (20, "张三")
-
cursor.execute(sql, values)
其中, UPDATE user SET age =%s WHERE name =%s 表示将 user 表中名字为 张三 的记录的年龄更新为 20, %s 是占位符,后面的values是更新数据和更新条件。执行完毕后,我们可以使用commit()方法提交事务。
七、删除数据
在删除数据之前,我们需要先准备好要删除的数据和删除条件。删除数据可以使用execute()方法执行 SQL语句,如下所示:
-
# 删除数据
-
sql = "DELETE FROM `user` WHERE `name`=%s"
-
values = ("张三",)
-
cursor.execute(sql, values)
其中, DELETE FROM user WHERE name =%s 表示删除 user 表中名字为 张三 的记录, %s 是占位符,后 面的values是删除条件。执行完毕后,我们可以使用commit()方法提交事务。
八、总结
本文介绍了PyMySQL的安装、连接MySQL数据库、创建表、插入数据、查询数据、更新数据和删除数据 等基本操作。通过学习本文,读者可以掌握使用PyMySQL进行MySQL数据库操作的基本方法。
行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!