python 管理系统实现mysql交互的示例代码

下面我为你详细讲解一下 "Python 管理系统实现 MySQL 交互的示例代码" 的实现攻略:

简介

我们使用 Python 语言编写的程序,需要与服务端 MySQL 数据库进行交互来完成数据的读取和更新操作。通过 Python 的 MySQL 驱动模块,我们可以使用 Python 通过 MySQL 协议来与 MySQL 数据库连接,实现操作数据的功能。

相关工具准备

  • 首先需要安装 MySQL 数据库,可前往 MySQL 官网 选择适合自己的版本下载并安装。
  • 安装 Python MySQL 驱动模块,可通过 pip 命令行工具来进行安装:
pip install pymysql

Python 数据库连接

首先,在 Python 程序中要实现与 MySQL 数据库进行交互,我们需要先连接到 MySQL 数据库。具体代码如下:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost", "用户名", "密码", "test")

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

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

这里我们使用 pymysql.connect() 函数连接到 MySQL 数据库,这个方法的参数依次为"主机名","用户名","密码","数据库名"。如果数据库连接成功,方法将返回一个数据库对象。

接着我们使用 db.cursor() 创建游标对象,该对象可用于执行 SQL 语句并进行操作。

最后我们使用 db.close() 关闭数据库连接。需要注意的是,如果打开了数据库连接, 必须关闭它(避免资源浪费)。

创建数据库和表

我们可以使用 Python 连接 MySQL 数据库后,创建数据库也就是执行 SQL 语句的操作。以下示例创建了一个名为 test 的数据库:

import pymysql
# 打开数据库连接
db = pymysql.connect("localhost", "root", "123456")
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 使用 execute() 方法执行 SQL,如果数据库存在就删除
cursor.execute("DROP DATABASE IF EXISTS test")
# 使用 execute() 方法执行 SQL,创建一个新的数据库 test
cursor.execute("CREATE DATABASE test")
# 关闭游标和连接
cursor.close()
db.close()

创建表的过程与创建数据库的过程类似,假设创建一个包含 idname 两个字段的名为 user 的表。以下示例是创建表的代码:

import pymysql
# 打开数据库连接
db = pymysql.connect("localhost", "root", "123456", "test")
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 如果表存在就删除
cursor.execute("DROP TABLE IF EXISTS user")
# 使用预处理语句创建表
sql = """CREATE TABLE user (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(20) NOT NULL)"""
cursor.execute(sql)
# 关闭游标和连接
cursor.close()
db.close()

以上语句使用了 SQL 预处理语句来创建表。这种方式,可以避免 SQL 注入问题。

插入数据

接着我们继续看下如何向表中插入数据,以下示例是向 user 表中插入一条数据的代码:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost", "root", "123456", "test")

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

# SQL 插入语句
sql = """INSERT INTO user(id, name)
         VALUES (1, 'san')"""
try:
    # 执行 SQL 语句
    cursor.execute(sql)
    # 提交到数据库执行
    db.commit()
except:
    # 如果发生错误则回滚
    db.rollback()

# 关闭游标和连接
cursor.close()
db.close()

查询数据

以下示例代码,展示了如何从 user 表中获取数据:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost", "root", "123456", "test")

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

# SQL 查询语句
sql = "SELECT * FROM user WHERE name = '%s'" % ('san')
try:
    # 执行SQL语句
    cursor.execute(sql)
    # 获取所有记录列表
    results = cursor.fetchall()
    for row in results:
        id = row[0]
        name = row[1]
        # 打印结果
        print("id=%s,name=%s" % (id, name))
except:
    print("Error: unable to fetch data")

# 关闭游标和连接
cursor.close()
db.close()

以上代码使用了 cursor.fetchall()for 循环遍历结果集,打印每条结果集中的 idname

以上就是 Python 通过 MySQL 驱动模块实现与 MySQL 数据库交互的示例代码攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 管理系统实现mysql交互的示例代码 - Python技术站

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

相关文章

  • 利用selenium 3.7和python3添加cookie模拟登陆的实现

    下面是详细讲解如何利用selenium 3.7和python3添加cookie模拟登陆的实现。 1. 安装selenium和ChromeDriver 首先,需要在电脑上安装selenium和ChromeDriver。可以通过以下命令安装selenium: pip3 install selenium ChromeDriver需要和本地Chrome浏览器的版本匹…

    python 2023年6月2日
    00
  • 在Python中执行系统命令的方法示例详解

    在Python中执行系统命令的方法示例详解 1. subprocess模块 在Python中执行系统命令的主要方式之一是使用subprocess模块,它提供了一个简单的接口来调用系统命令和访问命令输出。 1.1. subprocess的使用方法 使用subprocess模块执行系统命令的基本方法是使用subprocess.run()函数。在run()函数中传…

    python 2023年5月30日
    00
  • python 随机数生成的代码的详细分析

    下面是Python随机数生成的详细分析的攻略: 什么是Python中的随机数? 在Python中,随机数是指从一定范围内选取的任意数字。Python中的随机数模块被称为random模块,它提供生成随机数的函数和方法。我们可以使用Python中的random模块来生成随机数。 随机数生成的代码详解 Python中生成随机数的方法在random模块中,我们必须首…

    python 2023年6月3日
    00
  • 详解python文件的操作和异常的处理

    详解Python文件的操作和异常的处理 在Python中,文件是一个非常重要的概念,因为我们经常需要从文件中读取数据和将数据写入文件中。此外,当我们在处理文件时,常常需要处理异常,以避免程序崩溃和数据丢失。本文将详细介绍Python文件的操作和异常的处理,以及几个实际示例。 打开和关闭文件 在Python中,要打开一个文件,可以使用open()函数,该函数提…

    python 2023年5月13日
    00
  • 详解利用装饰器扩展Python计时器

    下面是详解利用装饰器扩展Python计时器的完整攻略。 1. 什么是装饰器 装饰器是一个Python函数,其目的是增强被装饰的函数或类的功能,而且不改变其本身的结构。 2. 利用装饰器实现Python计时器 利用装饰器可以非常方便地实现Python计时器。下面是一个实现计时器的装饰器示例: import time def timer(func): def w…

    python 2023年6月2日
    00
  • Python爬取当当、京东、亚马逊图书信息代码实例

    Python爬取当当、京东、亚马逊图书信息代码实例 在爬虫技术的应用中,Python是非常常见的一种语言,其强大的模块和库支持、语言简洁易学,使其成为了爬虫技术的首选语言之一。本篇文章主要讲解如何使用Python爬取当当、京东、亚马逊图书信息,以下是详细步骤: 步骤一:分析页面代码 在爬取页面信息之前,我们首先需要对目标页面的结构进行分析。在本例中,我们以当…

    python 2023年5月14日
    00
  • 如何在Python中使用SQLAlchemy操作SQLite数据库?

    当我们需要在Python中操作SQLite数据库时,可以使用SQLAlchemy库进行操作。以下是如何在Python中使用SQLAlchemy库操作SQLite数据库的完整使用攻略,包括连接数据库、创建表、插入数据、查询数据等步骤。同时,提供例以便更好理解如何在Python使用SQLAlchemy库操作SQLite数据库。 步骤1:安装SQLAlchemy库…

    python 2023年5月12日
    00
  • Python 并发的意义

    Python 并发是指一次执行多个任务,这在处理大规模数据、网络爬虫等场景下非常有用。在 Python 中,有三种主要的并发处理方式:多线程、多进程和协程。下面将对它们一个个进行详细讲解,以及演示它们的使用方法。 多线程并发 多线程并发在 Python 中使用非常广泛,通过在同一进程内使用多个线程,可以同时完成多个任务。下面是使用多线程并发的示例代码: im…

    python-answer 2023年3月25日
    00
合作推广
合作推广
分享本页
返回顶部