Python基础之操作MySQL数据库

yizhihongxing

下面我将为您详细讲解“Python基础之操作MySQL数据库”的完整攻略。

1. 安装必要的库

在Python中操作MySQL数据库需要使用pymysql库,因此我们需要首先安装该库。可以使用pip命令进行安装:

pip install pymysql

2. 连接MySQL数据库

在使用pymysql库操作MySQL数据库前,需要先连接到MySQL数据库。可以使用以下代码创建数据库连接:

import pymysql

# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='password', database='test', port=3306)

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()

# 关闭数据库连接
db.close()

其中,host、user、password、database、port参数需要根据自己的实际情况进行设置。

3. 执行数据库操作

连接MySQL数据库后,可以使用游标对象cursor来执行各种MySQL操作。

3.1 创建表

可以使用以下代码来创建一张名为students的表:

# SQL语句:CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(20) NOT NULL, age INT NOT NULL)
sql = 'CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(20) NOT NULL, age INT NOT NULL)'

# 执行SQL语句
cursor.execute(sql)

3.2 插入数据

可以使用以下代码向students表中插入一条数据:

# SQL语句:INSERT INTO students(name, age) VALUES ('Tom', 18)
sql = "INSERT INTO students(name, age) VALUES ('Tom', 18)"

# 执行SQL语句
cursor.execute(sql)

# 提交到数据库执行
db.commit()

3.3 查询数据

可以使用以下代码查询students表中的所有数据:

# SQL语句:SELECT * FROM students
sql = 'SELECT * FROM students'

# 执行SQL语句
cursor.execute(sql)

# 获取所有记录列表
results = cursor.fetchall()

# 输出查询结果
for row in results:
    id = row[0]
    name = row[1]
    age = row[2]
    print("id=%d,name=%s,age=%d" % (id, name, age))

3.4 更新数据

可以使用以下代码更新students表中id为1的数据:

# SQL语句:UPDATE students SET age = age + 1 WHERE id = 1
sql = 'UPDATE students SET age = age + 1 WHERE id = 1'

# 执行SQL语句
cursor.execute(sql)

# 提交到数据库执行
db.commit()

3.5 删除数据

可以使用以下代码删除students表中id为2的数据:

# SQL语句:DELETE FROM students WHERE id = 2
sql = 'DELETE FROM students WHERE id = 2'

# 执行SQL语句
cursor.execute(sql)

# 提交到数据库执行
db.commit()

4. 关闭数据库连接

在操作完MySQL数据库后,需要关闭数据库连接:

# 关闭游标
cursor.close()

# 关闭数据库连接
db.close()

以上就是完整的“Python基础之操作MySQL数据库”的攻略,希望能对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python基础之操作MySQL数据库 - Python技术站

(0)
上一篇 2023年5月21日
下一篇 2023年5月21日

相关文章

  • java SpringBoot项目整合Redis的方法是什么

    这篇文章主要介绍了java SpringBoot项目整合Redis的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java SpringBoot项目整合Redis的方法是什么文章都会有所收获,下面我们一起来看看吧。 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis …

    2023年4月10日
    00
  • mysql中如何优化表释放表空间

    对于 MySQL 中的表,数据一旦被删除并不会立刻释放存储空间,这会导致表的存储空间不断占据,而在长期运行的大型应用程序中,存储空间的消耗会越来越严重。因此我们需要定期清理和优化表,以释放表空间。 下面是优化表释放表空间的完整攻略: 1. 确认表空间使用情况 首先需要确认表的实际空间使用情况。 可以使用以下 SQL 查询语句: SHOW TABLE STAT…

    database 2023年5月19日
    00
  • SSH整合redis和MongoDB错误笔记

    由于毕设中做的是图片搜索网站,选择前端框用SSH,因为之间接触过SSH框架,略有了解,但没有深究,现在在整合redis和mongodb的过程中遇到很多错误,也是十分痛苦,只能通过百度和一步步尝试着解决问题。 首先,先把自己在整合过程中用到包先放出来。 一开始使用的是spring3.0.4,整合好redis后发现这个版本整合mongodb特别麻烦,而且网上的方…

    Redis 2023年4月12日
    00
  • SQLServer中bigint转int带符号时报错问题解决方法

    下面我将详细讲解“SQLServer中bigint转int带符号时报错问题解决方法”的完整攻略。 问题描述 在 SQL Server 中,当我们使用 CONVERT(int, bigint_num) 将 bigint 类型的数据转换为带符号的 int 类型时,可能会遇到以下错误: Msg 8115, Level 16, State 2, Line 4 Ari…

    database 2023年5月21日
    00
  • redis优化

    数据持久化 Redis提供了将数据定期自动持久化至硬盘的能力,包括RDB和AOF两种方案,两种方案分别有其长处和短板,可以配合起来同时运行,确保数据的稳定性。 必须使用数据持久化吗? Redis的数据持久化机制是可以关闭的。如果你只把Redis作为缓存服务使用,Redis中存储的所有数据都不是该数据的主体而仅仅是同步过来的备份,那么可以关闭Redis的数据持…

    Redis 2023年4月13日
    00
  • mysql数据库自动添加创建时间及更新时间

    自动添加创建时间及更新时间是一个非常常见的数据库设计需求。在MySQL中,我们可以利用触发器来实现这一需求。 触发器是一种与表事件相关联的特殊存储过程。当表中的数据被插入、更新或删除时,触发器会自动执行相应的SQL语句。 下面是利用触发器实现MySQL数据库自动添加创建时间及更新时间的基本步骤: 创建一张表,并在其中添加两个字段:created_at和upd…

    database 2023年5月22日
    00
  • PostgreSql生产级别数据库安装要注意事项

    PostgresSQL生产级别数据库安装要注意事项 PostgreSQL是一款非常优秀的开源数据库,被广泛应用于企业级应用中。本文将详细介绍PostgreSQL在生产环境中的安装流程,并提供具体的注意事项。 硬件与环境要求 在安装PostgreSQL之前,我们需要确认硬件与环境是否满足要求: 操作系统:PostgreSQL支持多种操作系统,包括Linux、W…

    database 2023年5月18日
    00
  • Oracle undo_management参数不一致错误

    题目:详细讲解“Oracle undo_management参数不一致错误”的完整攻略,过程中至少包含两条示例说明。 什么是Oracle undo 在Oracle数据库中,每当进行DML(Data Manipulation Language)操作(例如插入、更新和删除)时,Oracle需要使用Undo段来保存相关的数据以实现数据的回滚操作。在Undo段中,O…

    database 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部