Python基础(二十九、pymsql)

news/2024/7/24 6:47:57 标签: python, 开发语言

文章目录

  • 一、安装pymysql库
  • 二、代码实践
    • 1.连接MySQL数据库
    • 2.创建表格
    • 3.插入数据
    • 4.查询数据
    • 5.更新数据
    • 6.删除数据
  • 三、完整代码示例
  • 四、结论

使用Python的pymysql库可以实现数据存储,这是一种连接MySQL数据库的方式。在本篇文章中,将详细介绍如何使用pymysql库连接MySQL数据库、创建表格、插入数据以及查询数据等操作。
准备工作,本地要安装好mysql数据库,可通过官方网站下载 Mysql数据库

一、安装pymysql库

使用Python的pymysql库需要先安装该库。可以通过pip安装:

pip install pymysql

在这里插入图片描述

二、代码实践

1.连接MySQL数据库

连接到MySQL数据库之前,需要知道MySQL服务器的相关信息,例如服务器地址、用户名、密码和数据库名称等。这些信息可以根据具体情况进行修改。

使用以下代码连接到MySQL数据库:

python">import pymysql

# 建立连接
conn = pymysql.connect(host='localhost', user='root', password='password', database='test_db')

# 创建游标对象
cursor = conn.cursor()

# 关闭连接
conn.close()

上述代码中,我们使用connect()方法创建一个连接对象,该方法需要传递MySQL服务器的相关信息,例如服务器地址、用户名、密码和数据库名称等。成功建立连接后,我们可以使用cursor()方法创建一个游标对象。最后,我们使用close()方法关闭连接。

2.创建表格

连接到MySQL数据库后,可以使用以下代码创建一个表格:

python"># 创建表格
create_table_query = """CREATE TABLE users (
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(255) NOT NULL,
    age INT(11) NOT NULL,
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci"""

cursor.execute(create_table_query)

上述代码中,我们使用SQL语句创建了名为“users”的表格,并定义了三个字段:id、name和age。同时,我们还为id字段添加了主键约束。最后,我们使用execute()方法执行SQL语句。

3.插入数据

创建表格后,可以使用以下代码向表格中插入数据:

python"># 插入数据
insert_query = """INSERT INTO users (name, age) VALUES ('Tom', 25)"""
cursor.execute(insert_query)

上述代码中,我们使用SQL语句向“users”表格中插入了一行数据,其中name字段为“Tom”,age字段为25。最后,我们使用execute()方法执行SQL语句。

4.查询数据

可以使用以下代码查询表格中的数据:

python"># 查询数据
select_query = "SELECT * FROM users"
cursor.execute(select_query)
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))

上述代码中,我们使用SQL语句查询“users”表格中的所有数据,并使用fetchall()方法获取结果集。最后,我们遍历结果集并输出每一行数据。

5.更新数据

可以使用以下代码更新表格中的数据:

python"># 更新数据
update_query = "UPDATE users SET age=26 WHERE name='Tom'"
cursor.execute(update_query)
conn.commit()

上述代码中,我们使用SQL语句更新“users”表格中名为“Tom”的行的age字段为26。最后,我们使用commit()方法提交更改。

6.删除数据

可以使用以下代码从表格中删除数据:

python"># 删除数据
delete_query = "DELETE FROM users WHERE name='Tom'"
cursor.execute(delete_query)
conn.commit()

上述代码中,我们使用SQL语句从“users”表格中删除名为“Tom”的行。最后,我们使用commit()方法提交更改。

三、完整代码示例

下面是完整的Python代码示例:

python">import pymysql

# 建立连接
conn = pymysql.connect(host='localhost', user='root', password='password', database='test_db')

# 创建游标对象
cursor = conn.cursor()

# 创建表格
create_table_query = """CREATE TABLE users (
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(255) NOT NULL,
    age INT(11) NOT NULL,
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci"""

cursor.execute(create_table_query)

# 插入数据
insert_query = """INSERT INTO users (name, age) VALUES ('Tom', 25)"""
cursor.execute(insert_query)

# 查询数据
select_query = "SELECT * FROM users"
cursor.execute(select_query)
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))

# 更新数据
update_query = "UPDATE users SET age=26 WHERE name='Tom'"
cursor.execute(update_query)
conn.commit()

# 删除数据
delete_query = "DELETE FROM users WHERE name='Tom'"
cursor.execute(delete_query)
conn.commit()

# 关闭连接
conn.close()

在上述代码中,我们使用pymysql库连接到MySQL数据库,创建名为“users”的表格,并向表格中插入了一行数据。最后,我们使用SQL语句查询、更新和删除了表格中的数据。最后,我们使用commit()方法提交更改,然后关闭连接。

四、结论

当使用Python的pymysql库进行MySQL数据库操作时,以下是一些重要的注意事项和步骤:

  1. 安装pymysql库:使用pip命令安装pymysql库,以便在Python中使用该库。
  2. 连接到MySQL数据库:使用pymysql库的connect()方法连接到MySQL数据库,并创建一个连接对象。
  3. 创建游标对象:使用连接对象的cursor()方法创建一个游标对象,用于执行SQL语句。
  4. 创建表格:使用SQL语句创建一个表格,并定义字段、主键等约束。
  5. 插入数据:使用SQL语句向表格中插入数据。
  6. 查询数据:使用SQL语句查询表格中的数据,并使用游标对象的fetchall()方法获取结果集。
  7. 更新数据:使用SQL语句更新表格中的数据,并使用连接对象的commit()方法提交更改。
  8. 删除数据:使用SQL语句从表格中删除数据,并使用连接对象的commit()方法提交更改。
  9. 关闭连接:使用连接对象的close()方法关闭与MySQL数据库的连接。

这些是使用pymysql库进行MySQL数据库操作的关键步骤。


http://www.niftyadmin.cn/n/5347281.html

相关文章

ChatGPT 和文心一言 | 两大AI助手哪个更胜一筹

欢迎来到英杰社区: https://bbs.csdn.net/topics/617804998 欢迎来到阿Q社区: https://bbs.csdn.net/topics/617897397 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步&#xff…

14.java集合

文章目录 概念Collection 接口概念示例 Iterator 迭代器基本操作:并发修改异常增强循环遍历数组:遍历集合:遍历字符串:限制 list接口ListIteratorArrayList创建 ArrayList:添加元素:获取元素:修…

React16源码: React中commit阶段的invokeGuardedCallback的源码实现

invokeGuardedCallback 1 )概述 在 commit 阶段中在 DEV 环境中调用了 invokeGuardedCallback 这个方法这个方法是在开发过程中被使用,用于捕获错误,协助开发调试的方法 2 )概述 定位到 packages/shared/ReactErrorUtils.js#L4…

shell脚本——条件语句与循环语句

目录 一、条件语句 1、test命令测试条件表达式 2、整数数值比较 3、字符串比较 4、逻辑测试(短路运算) 5、双中括号 二、if语句 1、 分支结构 1.1 单分支结果 1.2 双分支 1.3 多分支 2、case 一、条件语句 条件测试:判断某需求是…

【Three.js】轨道控制器(OrbitControls)的使用

目录 📝引入 📝使用 📤1、创建轨道控制器 🔧2、交互事件 🚴3、控制物体自动旋转 🎲4、启用阻尼(惯性) 🚫5、禁止平移 🚫6、禁止旋转 🌵…

2024年华为OD机试真题-靠谱的车-Python-OD统一考试(C卷)

题目描述: 程序员小明打了一辆出租车去上班。出于职业敏感,他注意到这辆出租车的计费表有点问题,总是偏大。 出租车司机解释说他不喜欢数字4,所以改装了计费表,任何数字位置遇到数字4就直接跳过,其余功能都正常。 比如: 1. 23再多一块钱就变为25; 2. 39再多一块…

MySQL的数据锁表(data_locks 表)

data_locks 表显示了持有和请求的数据锁。关于哪些锁请求被哪些持有的锁阻塞的信息。 示例数据锁信息: mysql> SELECT * FROM performance_schema.data_locks\G *************************** 1. row ***************************ENGINE: INNODBENGINE_LOCK_ID:…

使用HyperLogLog统计网站uv

网站的UV定义 网站的UV(Unique Visitor)是指独立访客的数量,用于衡量网站的访问量和流量。在网站统计中,通常使用UV来度量网站的独立访客数量。 UV的定义有两种常见方式: Cookie方式:通过浏览器的Cookie…