Python基础之操作MySQL数据库

下面我将为您详细讲解“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日

相关文章

  • nginx 负载均衡 多站点共享Session

    NGINX负载均衡多站点共享Session攻略 背景介绍 NGINX是一款高性能的反向代理、负载均衡服务器,可用于集群、高并发等场景。在多站点应用中,通常会出现需要多个站点之间共享Session的情况,本文将详细介绍如何使用NGINX实现负载均衡多站点共享Session。 实现步骤 1. Session存储 ​ Session存储是实现Session共享的前…

    database 2023年5月22日
    00
  • Mysql DateTime 查询问题解析

    那我就来给大家详细讲解一下“Mysql DateTime 查询问题解析”的完整攻略。 问题描述 在使用 Mysql 数据库时,我们经常需要查询某个时间段内的数据,例如查询某天或某个月的数据。而 Mysql 中时间类型存储的是 DateTime,它会包括时分秒,因此在查询时需要注意一些问题。 问题解析 1. 查询某个日期 如果要查询某个具体日期的数据,可以使用…

    database 2023年5月22日
    00
  • Starting MySQL.Manager of pid-file quit without updating file.[FAILED]的解决方法

    解决步骤如下: 1. 检查MySQL服务是否已经启动 运行以下命令检查MySQL服务是否已经正在运行: systemctl status mysql 如果该命令输出类似下面的结果,则表示MySQL服务正在运行: ● mysql.service – MySQL Community Server Loaded: loaded (/lib/systemd/syst…

    database 2023年5月22日
    00
  • php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)

    下面我会详细讲解如何使用PHP和MySQL查询当天、本周、本月的数据,并提供两个实例说明。 查询当天数据 要查询当天的数据,需要先获取当前时间并格式化。可以使用PHP的date函数来实现: $date = date(‘Y-m-d’); // 获取当前日期,格式为"年-月-日" 然后就可以使用MySQL的WHERE子句筛选出符合条件的数据,…

    database 2023年5月22日
    00
  • Oracle中定义以及使用同义词的方法

    在Oracle数据库中,同义词(Synonym)是一个非常重要的对象,它允许用户以不同的名称访问同一个对象。定义同义词的方法如下: 1. 创建同义词 创建同义词的语法格式如下: CREATE [OR REPLACE] [PUBLIC] SYNONYM 同义词名称 FOR 目标对象名称; 其中,[OR REPLACE]表示如果已经存在同义词,则先删除原同义词,…

    database 2023年5月21日
    00
  • MySQL总是差八个小时该如何解决

    关于 MySQL 总是差八个小时的问题,这个问题通常涉及到时区的问题,可以按照以下步骤进行解决。 步骤一:查看默认时区 首先,我们需要查看 MySQL 的默认时区,可以使用如下命令: SELECT @@global.time_zone, @@session.time_zone; 如果结果显示的是系统的时区,就可以跳过步骤二,直接进入步骤三。 步骤二:修改默认…

    database 2023年5月22日
    00
  • MySQL最佳实践之分区表基本类型

    MySQL最佳实践之分区表基本类型 分区表是MySQL5.1之后提供的表类型,它将一张大表分割成多个小表,可以大大提高查询效率。下面是分区表的几种基本类型: RANGE分区 根据指定的列值区域进行分区,语法如下: CREATE TABLE 表名( 列名 数据类型, … ) PARTITION BY RANGE(列名)( PARTITION 子表1 VAL…

    database 2023年5月21日
    00
  • MySQL百万级数据量分页查询方法及其优化建议

    MySQL百万级数据量分页查询方法及其优化建议 分页查询是常用的数据库操作之一,但当数据量达到百万级以上时,如何优化分页查询成为了开发者们面临的难题。本文将详细讲解如何处理MySQL百万级数据量的分页查询,以及相关的优化建议。 传统分页查询方法 传统的分页查询方法通常是使用LIMIT和OFFSET来控制返回结果的数量和排列顺序,例如: SELECT * FR…

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