如何在Python中使用数据库?

让我来为您详细讲解如何在Python中使用数据库。

一、准备工作

在使用Python操作数据库前,需要安装相应的数据库驱动包。在这里以MySQL数据库为例,可以使用Python的第三方库pymysql来操作MySQL数据库。

安装pymysql可以使用pip工具,在命令行中输入如下命令即可:

pip install pymysql

二、连接到数据库

连接到MySQL数据库需要使用pymysql.connect()函数。函数需要传入主机名、用户名、密码、数据库名称等参数,具体如下:

import pymysql

# 打开数据库连接
db = pymysql.connect(host="localhost", user="root", password="123456", database="testdb")

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

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

如上所示,我们可以使用pymysql.connect()打开一个MySQL数据库连接,其中:

  • host参数为数据库主机名,如果是本机数据库,即为localhost
  • user参数为用户名,如果MySQL数据库的用户名为root则使用root
  • password参数为数据库密码;
  • database参数为数据库名称。

三、创建数据表

创建数据表需要使用CREATE TABLE语句,示例如下:

import pymysql

# 打开数据库连接
db = pymysql.connect(host="localhost", user="root", password="123456", database="testdb")

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

# 使用 execute() 方法执行 SQL,如果数据表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")

# 使用预处理语句创建数据表
sql = """CREATE TABLE EMPLOYEE (
        FIRST_NAME  CHAR(20) NOT NULL,
        LAST_NAME  CHAR(20),
        AGE INT,
        SEX CHAR(1),
        INCOME FLOAT )"""

cursor.execute(sql)

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

如上所示,创建数据表需要用到execute()方法和SQL语句。在这里我们使用了预处理语句CREATE TABLE语句来创建数据表。

四、插入数据

插入数据需要使用INSERT INTO语句,示例如下:

import pymysql

# 打开数据库连接
db = pymysql.connect(host="localhost", user="root", password="123456", database="testdb")

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

# SQL 插入语句
sql = "INSERT INTO EMPLOYEE (FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) \
       VALUES ('John', 'Doe', 20, 'M', 2000.00)"

try:
    # 执行sql语句
    cursor.execute(sql)
    # 提交到数据库执行
    db.commit()
    print("插入成功!")
except:
    # 如果发生错误则回滚
    db.rollback()

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

在上面的代码中,我们使用INSERT INTO语句和VALUES子句来插入数据。

五、查询数据

查询数据需要使用SELECT语句,示例如下:

import pymysql

# 打开数据库连接
db = pymysql.connect(host="localhost", user="root", password="123456", database="testdb")

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

# SQL 查询语句
sql = "SELECT * FROM EMPLOYEE WHERE INCOME > '%d'" % (1000)

try:
    # 执行SQL语句
    cursor.execute(sql)
    # 获取所有记录列表
    results = cursor.fetchall()
    for row in results:
        first_name = row[0]
        last_name = row[1]
        age = row[2]
        sex = row[3]
        income = row[4]
        # 打印结果
        print("first_name=%s,last_name=%s,age=%d,sex=%s,income=%d" % (first_name, last_name, age, sex, income))
except:
    print("Error: unable to fetch data")

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

如上所示,我们使用了SELECT * FROM EMPLOYEE语句查询EMPLOYEE表中所有的数据,并使用for循环和fetchall()方法遍历所有记录并输出。

六、更新数据

更新数据需要使用UPDATE语句,示例如下:

import pymysql

# 打开数据库连接
db = pymysql.connect(host="localhost", user="root", password="123456", database="testdb")

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

# SQL 更新语句
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M')

try:
    # 执行SQL语句
    cursor.execute(sql)
    # 提交到数据库执行
    db.commit()
    print("更新成功!")
except:
    # 如果发生错误则回滚
    db.rollback()

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

在上面的代码中,我们使用了UPDATE语句和WHERE子句来更新符合条件的数据。

七、删除数据

删除数据需要使用DELETE语句,示例如下:

import pymysql

# 打开数据库连接
db = pymysql.connect(host="localhost", user="root", password="123456", database="testdb")

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

# SQL 删除语句
sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d'" % (20)

try:
    # 执行SQL语句
    cursor.execute(sql)
    # 提交修改
    db.commit()
    print("删除成功!")
except:
    # 发生错误时回滚
    db.rollback()

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

如上所示,我们使用了DELETE FROM语句和WHERE子句来删除符合条件的数据。

以上就是Python操作MySQL数据库的详细过程,希望可以对你有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何在Python中使用数据库? - Python技术站

(0)
上一篇 2023年4月19日
下一篇 2023年4月19日

相关文章

  • Python用imghdr模块识别图片格式实例解析

    接下来我将详细讲解如何使用Python的imghdr模块识别图片格式的完整攻略: 介绍 imghdr模块是Python标准库中提供的一个用于识别图片格式的模块。通过使用该模块,可以在Python中轻松地识别图像文件的格式,而无需首先处理文件的内容。imghdr模块非常适合用于对上传文件的类型进行检查,以确保上传的内容是安全且符合预期的。 安装 imghdr模…

    python 2023年5月19日
    00
  • 使用PyQtGraph绘制精美的股票行情K线图的示例代码

    使用PyQtGraph绘制股票K线图的攻略可以分为以下几个步骤: 安装PyQtGraph PyQtGraph是一个用于科学计算的Python图形库,支持多种图形类型,如曲线图、散点图和3D图。可以通过在命令行中输入以下命令安装: pip install pyqtgraph 导入所需库和数据 在代码中导入所需的PyQtGraph库和其他必要的库。然后,使用pa…

    python 2023年6月6日
    00
  • Python基础异常处理梳理总结

    当我们在编写Python程序时,常常会遇到各种各样的异常情况,比如语法错误、类型错误、文件不存在等。这时就需要使用异常处理机制来处理这些异常,从而保证程序的正确性和稳定性。本文将对Python基础异常处理做一个总结,包括异常的基本语法、常用的异常类型、自定义异常以及异常处理语句try-except、try-except-else和try-except-fin…

    python 2023年5月13日
    00
  • Python使用ffmpeg合成视频、音频的实现方法

    课程基本介绍: 在Python语言中使用ffmpeg库来合成视频和音频是一种非常方便的方法。本课程将会提供完整的Python代码示例来实现这一过程。在本课程中,你将学习如何使用ffmpeg库编写代码,合成音频和视频文件。 第一步:安装FFmpeg和pydub库 在开始之前,我们需要安装ffmpeg和pydub库。 首先下载ffmpeg可以从官网下载(http…

    python 2023年5月19日
    00
  • 解决python pip安装第三方模块报错:error:legacy-install-failure

    解决Python pip安装第三方模块报错“error: legacy-install-failure”的攻略 在使用Python的pip工具安装第三方模块时,有时会遇到“error: legacy-install-failure”错误。这个错误通常是由于pip版本低或者缺少必要的依赖库引起的。本攻略将提供解决Python pip安装第三方模块报错“erro…

    python 2023年5月13日
    00
  • 手把手教你pip配置国内镜像源(最新详尽版)

    下面就是详细讲解“手把手教你pip配置国内镜像源(最新详尽版)”的完整攻略: 标题 介绍 在使用 Python 时,用 pip 安装包是一个常见的操作。但是,由于国内网络访问的特殊性,直接使用 pip 安装包可能会十分慢甚至失败,因此我们需要配置国内镜像源来加速 pip 的包的下载。 步骤 升级 pip 首先先升级 pip 到最新版本。在终端中执行以下命令:…

    python 2023年5月14日
    00
  • Python实现模拟浏览器请求及会话保持操作示例

    Python实现模拟浏览器请求及会话保持操作示例 在Python中,我们可以使用requests库来模拟浏览器请求,并使用session来保持会话状态。本文将详细讲解如何使用Python实现模拟浏览器请求及会话保持操作,并提供两个示例。 环境配置 在使用Python实现模拟浏览器请求及会话保持操作时,我们需要安装requests库。可以使用pip命令来安装r…

    python 2023年5月15日
    00
  • Python超有用的多版本管理工具pyenv

    Python超有用的多版本管理工具pyenv pyenv是一个针对Python的多版本管理工具,它可以帮助我们轻松地切换Python版本,使得我们可以在同一台机器上运行不同的Python版本而不会互相干扰。本文将详细介绍如何使用pyenv,包括安装和配置,以及如何实现多版本Python的切换。 安装pyenv 安装pyenv最便捷的方法是使用pyenv-in…

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