Python操作MySQL数据库实例详解
本文将以Python编程语言为例,介绍如何通过Python连接MySQL数据库实例,并进行增删改查等操作。
安装相关软件
在开始操作之前,需要安装一些相关软件,包括:
- Python3.x或以上版本【下载地址链接】
- PyMySQL库:Python连接MySQL数据库的库,可通过pip install pymysql命令进行安装
连接MySQL数据库
在Python程序中连接MySQL数据库,需要先从pymysql库中导入连接相关的方法,示例代码如下:
import pymysql
# 连接MySQL数据库
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='password',
database='test_db')
上述代码中,我们通过pymysql的connect方法连接到了本地的MySQL服务。其中host参数表示MySQL服务器的IP地址,port参数表示MySQL服务绑定的端口号,user参数表示登录MySQL的用户名,password参数表示登录MySQL的密码,database参数表示要操作的数据库名称。
连接成功后,我们需要获取MySQL数据库游标,示例代码如下:
# 获取MySQL游标
cursor = conn.cursor()
创建MySQL表格
使用Python操作MySQL数据库之前,需要先创建数据表。我们可以通过Python程序执行SQL语句来创建MySQL表格,示例代码如下:
# 创建表格
cursor.execute('''CREATE TABLE IF NOT EXISTS `student` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`name` VARCHAR(255) NOT NULL ,
`age` INT UNSIGNED NOT NULL ,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4''')
上述代码中,我们创建了名为student的表格,并定义了三个字段:id、name和age。其中id为自动递增的无符号整数类型,name和age分别为字符型和整型。
插入数据
插入数据是在业务逻辑中最常见的操作之一,我们可以通过pymysql库的execute方法执行插入数据的SQL语句,示例代码如下:
# 插入数据
sql = "INSERT INTO `student` (`name`, `age`) VALUES (%s, %s)"
cursor.execute(sql, ('张三', 18))
conn.commit()
上述代码中,我们插入了一条记录,其中name和age分别为张三和18。
查询数据
查询数据是在业务逻辑中另一个常见的操作,我们可以通过pymysql库的execute方法执行查询数据的SQL语句,示例代码如下:
# 查询数据
sql = "SELECT * FROM `student` WHERE age > %s"
cursor.execute(sql, (16,))
result = cursor.fetchall()
for row in result:
print(row)
上述代码中,我们查询了年龄大于16的学生信息,并打印输出了结果。其中fetchall方法返回所有查询结果,返回的结果是一个元组列表。
更新数据
更新数据需要执行SQL语句,我们可以通过pymysql库的execute方法执行更新数据的SQL语句,示例代码如下:
# 更新数据
sql = "UPDATE `student` SET age = %s WHERE name = %s"
cursor.execute(sql, (20, '张三'))
conn.commit()
上述代码中,我们更新了张三的年龄为20岁。
删除数据
删除数据需要执行SQL语句,我们可以通过pymysql库的execute方法执行删除数据的SQL语句,示例代码如下:
# 删除数据
sql = "DELETE FROM `student` WHERE name = %s"
cursor.execute(sql, ('张三',))
conn.commit()
上述代码中,我们删除了名为张三的学生信息。
示例说明
以下是一个完整的示例程序,实现了与MySQL数据库的交互,并添加了插入、查询、更新和删除等操作。
import pymysql
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='password',
database='test_db')
cursor = conn.cursor()
# 创建表格
cursor.execute('''CREATE TABLE IF NOT EXISTS `student` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`name` VARCHAR(255) NOT NULL ,
`age` INT UNSIGNED NOT NULL ,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4''')
# 插入数据
sql = "INSERT INTO `student` (`name`, `age`) VALUES (%s, %s)"
cursor.execute(sql, ('张三', 18))
conn.commit()
# 查询数据
sql = "SELECT * FROM `student` WHERE age > %s"
cursor.execute(sql, (16,))
result = cursor.fetchall()
for row in result:
print(row)
# 更新数据
sql = "UPDATE `student` SET age = %s WHERE name = %s"
cursor.execute(sql, (20, '张三'))
conn.commit()
# 删除数据
sql = "DELETE FROM `student` WHERE name = %s"
cursor.execute(sql, ('张三',))
conn.commit()
cursor.close()
conn.close()
在上述示例程序中,我们先创建了一个名为student的表格,然后插入了一条名为张三、年龄为18岁的学生信息。之后进行了一次查询,查询年龄大于16岁的学生信息,并将查询结果输出。接着,我们将名为张三的学生信息的年龄改为了20岁,最后删除了名为张三的学生信息。
总结
通过本文的介绍,我们学习了如何使用Python编程语言连接MySQL数据库,并进行增删改查等基本的操作。在实际应用中,我们可以根据业务需求进行相应的操作,从而实现MySQL数据库的完整管理。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python操作MySQL数据库实例详解【安装、连接、增删改查等】 - Python技术站