Python连接MySQL

2023-11-17

Python连接MySQL可以使用多种库,比如pymysql、mysql-connector-python、PyMySQL等。这里以pymysql为例,介绍Python连接MySQL的基本操作。

1. 安装pymysql库

```

pip install pymysql

```

2. 连接MySQL数据库

```python

import pymysql

# 打开数据库连接

db = pymysql.connect(host='localhost', user='root', password='password', database='test_db')

# 使用cursor()方法获取操作游标

cursor = db.cursor()

# 执行SQL语句

cursor.execute("SELECT VERSION()")

# 获取单条数据

data = cursor.fetchone()

print("Database version : %!s(MISSING) " %!d(MISSING)ata)

# 关闭数据库连接

db.close()

```

在上面的示例中,使用`pymysql.connect()`方法连接MySQL数据库,其中`host`是数据库服务器名称或IP地址,`user`是连接数据库的用户名,`password`是对应的密码,`database`是要连接的数据库名称。连接成功后,可以使用`cursor()`方法获取操作游标,然后执行SQL语句,使用`fetchone()`方法获取第一条数据,最后关闭数据库连接。

3. 执行SQL操作

```python

import pymysql

# 打开数据库连接

db = pymysql.connect(host='localhost', user='root', password='password', database='test_db')

# 使用cursor()方法获取操作游标

cursor = db.cursor()

# 执行SQL语句

sql = "INSERT INTO user(name, age) VALUES ('Tom', 20)"

cursor.execute(sql)

# 提交到数据库执行

db.commit()

# 关闭数据库连接

db.close()

```

在上面的示例中,执行了一条插入数据的SQL语句,使用`execute()`方法执行SQL语句,然后使用`commit()`方法提交到数据库执行,最后关闭数据库连接。

4. 查询数据

```python

import pymysql

# 打开数据库连接

db = pymysql.connect(host='localhost', user='root', password='password', database='test_db')

# 使用cursor()方法获取操作游标

cursor = db.cursor()

# 执行SQL语句

sql = "SELECT * FROM user"

cursor.execute(sql)

# 获取所有数据

results = cursor.fetchall()

for row in results:

    name = row[0]

    age = row[1]

    print("name = %!s(MISSING), age = %!d(MISSING)" %!((MISSING)name, age))

# 关闭数据库连接

db.close()

```

在上面的示例中,执行了一条查询数据的SQL语句,使用`execute()`方法执行SQL语句,然后使用`fetchall()`方法获取所有数据,最后循环输出每一行数据。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python连接MySQL 的相关文章

  • 补丁 - 为什么相对补丁目标名称不起作用?

    我已经从模块导入了一个类 但是当我尝试修补类名而不使用模块作为前缀时 出现类型错误 TypeError Need a valid target to patch You supplied MyClass 例如 以下代码给出了上述错误 imp
  • Pandas:GroupBy 到 DataFrame

    参考这个关于 groupby 到 dataframe 的非常流行的问题 https stackoverflow com questions 10373660 converting a pandas groupby object to dat
  • pyspark 数据框中的自定义排序

    是否有推荐的方法在 pyspark 中实现分类数据的自定义排序 我理想地寻找 pandas 分类数据类型提供的功能 因此 给定一个数据集Speed列 可能的选项是 Super Fast Fast Medium Slow 我想实现适合上下文的
  • Python3.0 - 标记化和取消标记化

    我正在使用类似于以下简化脚本的内容来解析较大文件中的 python 片段 import io import tokenize src foo bar src bytes src encode src io BytesIO src src l
  • 如果未引发异常,则通过 Python 单元测试

    在Python中unittest框架 是否有一种方法可以在未引发异常的情况下通过单元测试 否则会因 AssertRaise 而失败 如果我正确理解你的问题 你could做这样的事情 def test does not raise on va
  • Pandas:如果单元格包含特定文本则删除行

    pandas 中的这段代码不起作用 如果该列包含提供的任何文本 数字 我希望它删除该行 目前 我只能在单元格与我的代码中传递的确切文本匹配时才能使其工作 因为它只删除显示 Fin 的单元格不是金融或金融 df2 df df Team Fin
  • Keras:如何保存模型或权重?

    如果这个问题看起来很简单 我很抱歉 但是阅读 Keras 保存和恢复帮助页面 https www tensorflow org beta tutorials keras save and restore models https www t
  • 在 Django OAuth Toolkit 中安全创建新应用程序

    如何将 IsAdminUser 权限添加到 Django OAuth Toolkit 中的 o applications 视图 REST FRAMEWORK DEFAULT PERMISSION CLASSES rest framework
  • 如何使用文本相似性删除 pandas 数据框中相似(不重复)的行?

    我有数千个数据 这些数据可能相似也可能不相似 使用 python 的默认函数 drop duplicates 并没有真正的帮助 因为它们只检测相似的数据 例如 如果我的数据包含类似以下内容怎么办 嗨 早上好 嗨 早上好 Python 不会将
  • Emacs 24.x 上的 IPython 支持

    我对 IPython 与 Emacs 的集成感到困惑 从 Emacs 24 开始 Emacs 附带了自己的python el 该文件是否支持 IPython 还是仅支持 Python 另外 维基百科 http emacswiki org e
  • Django 的 request.FILES 出现 UnicodeDecodeError

    我在视图调用中有以下代码 def view request body u for filename f in request FILES items body body Filename filename n f read n 在某些情况下
  • Geodjango距离查询未检索到正确的结果

    我正在尝试根据地理位置的接近程度来检索一些帖子 正如您在代码中看到的 我正在使用 GeoDjango 并且代码在视图中执行 问题是距离过滤器似乎被完全忽略了 当我检查查询集上的距离时 我得到了预期距离 1m 和 18km 但 18km 的帖
  • 数据读取过程中遇到致命错误

    我正在进行定期更新表扫描 Using connect1 As New MySqlConnection ConnectLocalhost serverString connect1 Open Dim cmd New MySqlCommand
  • 您可以使用 MySQL 查询来完整创建数据库的副本吗

    我有一个包含 5 个表的 MySQL 数据库的实时版本和一个测试版本 我不断使用 phpMyAdmin 将实时版本中的每个表复制到测试版本 有谁有mysql查询语句来制作数据库的完整副本吗 查询字符串需要考虑结构 数据 自动增量值以及与需要
  • Mac OSX 10.6 上的 Python mysqldb 不工作

    我正在使用 Python 2 7 并尝试让 Django 项目在 MySQL 后端运行 我已经下载了 mysqldb 并按照此处的指南进行操作 http cd34 com blog programming python mysql pyth
  • Anaconda 无法导入 ssl 但 Python 可以

    Anaconda 3 Jupyter笔记本无法导入ssl 但使用Atom终端导入ssl没有问题 我尝试在 Jupyter 笔记本中导入 ssl 但出现以下错误 C ProgramData Anaconda3 lib ssl py in
  • Innodb页面大小设置

    在innodb中 页面大小默认为16kb 如何将页面大小设置为 8kb 是否有在源编译步骤中设置的选项 您不需要在源编译步骤中指定页面大小 MySQL 5 6 及更高版本支持不同的页面大小 无需重新编译 但是 您必须在初始化 InnoDB
  • 混淆矩阵不支持多标签指示符

    multilabel indicator is not supported是我在尝试运行时收到的错误消息 confusion matrix y test predictions y test is a DataFrame其形状为 Horse
  • 如何与其他用户一起使用 pyenv?

    如何与其他用户一起使用 pyenv 例如 如果我在用户 test 的环境中安装了 pyenv 则当我以 test 身份登录时可以使用 pyenv 但是 当我以其他用户 例如 root 身份登录时如何使用 pyenv 即使你这么做了 我也会s
  • Apache Beam Pipeline 写表后查询表

    我有一个 Apache Beam Dataflow 管道 它将结果写入 BigQuery 表 然后我想查询该表以获取管道的单独部分 但是 我似乎无法弄清楚如何正确设置此管道依赖性 我编写的新表 然后想要查询 与一个单独的表连接以进行某些过滤

随机推荐

  • 8259初始化命令字(ICW1-ICW4)

    8259A的中断操作功能很强 包括中断的请求 屏蔽 排队 结束 级联以及提供中断类型号和查询等操作 并且其操作的方式又有不同 它既能实现向量中断 又能进行中断查询 它可以用于16位机 也可用于8位机 因此 使用起来感到复杂且不好掌握 为此
  • idea 提交远程库冲突解决

    idea 提交远程库冲突解决 github团队协作 正常开发 管理得好的话 不会出现代码冲突问题 项目经理会划分模块 每个小组成员各自开发模块 公共的代码由专门的人负责维护 但是偶尔管理沟通问题导致出现冲突偶尔也是会出现的 冲突出现场景过程
  • Visual Studio Code中英文的切换

    我在学习 Flutter 的时候 使用过 VsCode 来开发 一般来说 安装好的 VsCode 都是英文版的 有些人可能不太习惯用英文版的 不过没有关系 我在这里提供中英文切换的方法给大家 切换为中文 1 点击 1 中的选项 在 2 中的
  • java栈溢出现象_JVM源码分析之栈溢出完全解读

    概述 之所以想写这篇文章 其实是因为最近有不少系统出现了栈溢出导致进程crash的问题 并且很隐蔽 根本原因还得借助coredump才能分析出来 于是想从JVM实现的角度来全面分析下栈溢出的这类问题 或许你碰到过如下的场景 日志里出现了St
  • python uiautomator2 init 作用

    目录 背景 具体步骤 总结 背景 在搭建Python的自动化测试环境时 执行脚本一直报错 ions GatewayError Uiautomator started failed
  • (Linux)docker容器安装Kibana--简单安装

    docker容器安装Kibana docker容器安装Kibana 启动Kibana docker容器安装Kibana 使用docker命令安装Kibana容器 sudo docker pull kibana 7 4 2 等待下载安装完成
  • matlab 2022更新

    matlab 2022b dictionary 对象 将唯一键映射到值以便快速查找 深度学习工具箱 直接导入 PyTorch 模型 将模型导出到 TensorFlow Simulink 将库浏览器停靠在模型中 MATLAB NET 引擎 A
  • Bootstrap JavaScript插件:警告信息 (alert.js)

    作者 WangMin 格言 努力做好自己喜欢的每一件事 CSDN原创文章 博客地址 WangMin 警告框插件 alert js 为警告框组件一个关闭功能 就是点击警告框的关闭按钮 可以让警告框消失 并将它从 DOM 中删除 使用方法 1
  • SpringBoot+ActiveMQ-点对点队列模式(消费端)

    ActiveMQ消息中间件的点对点模式point to point 消息队列 生产端案例 配合消费端测试 SpringBoot ActiveMQ生产端 ActiveMQ版本 apache activemq 5 16 5 SpringBoot
  • C#基础教程

    我的第一个 C 程序 Console WriteLine Hello World Console ReadKey 编写 Console Readkey 这个函数是为了在控制台窗口停留一下 直到敲击键盘为止 不然运行时 Hello World
  • 树莓派开机启动终端运行方法

    在路径 home pi config autostart 下建立一个文本文本 并以后缀名 desktop 结尾 根据是否需要显示终端 写入下面两段内容之一 显示终端启动 Desktop Entry Name testboot Icon ut
  • 基于SpringBoot的校园请假管理系统

    全网粉丝20W csdn特邀作者 博客专家 CSDN新星计划导师 java领域优质创作者 博客之星 掘金 华为云 阿里云 InfoQ等平台优质作者 专注于Java技术领域和毕业项目实战 文末获取项目下载方式 一 项目背景介绍 校园请假信息管
  • ruoyi若依获取当前登录用户以及用户信息

    this store state user 登录成功 有token情况下 直接打印这个
  • matlab knn回归,(25条消息)KNN算法matlab函数 ClassificationKNN.fit

    mdl ClassificationKNN fit X Y 基于特征和分类标签返回分类模型 X 每行表示一个特征向量 每列表示特征向量中一个变量 Y 每行代表的是X中特征向量说代表的标签或种类 mdl ClassificationKNN f
  • 关于用vector管理CImage时遇到的坑

    假设有一个类A 里面有一个CImage 如果用vector储存 erase前面的元素后 后面的CImage就无法使用 会报ATLASSERT hBitmap m hBitmap 检查失败 struct A CImage img int tm
  • YoloV8改进策略:将CIoU替换成Wise-IoU,幸福涨点,值得拥有,还支持EIoU、GIoU、DIoU、SIoU无缝替换。

    文章目录 摘要 Wise IoU 论文翻译 摘要 简介 A ln norm损失 B 交集 并集 C 聚焦机制 相关工作 A BBR的损失函数 B 带FM的损失函数 方法 仿真实验 B 梯度消失问题的解决方法 C 提出的方法 实验 A 实验设
  • 乐观锁和悲观锁

    在学习Java时 我们常常会听到乐观锁和悲观锁 那么什么是乐观锁 什么是悲观锁呢 我们先来看一下如下情况 乐观锁就是先更新再检验 而悲观锁就是先进行保护然后再修改 为什么要保护 什么是保护 我们设想如下情况 A 100 现在有两个线程T1和
  • python wow自动打怪脚本官方教程_【按键精灵】魔兽世界LR 自动打怪脚本

    Hwnd Plugin Window Find 0 魔兽世界 设置换视角标志1 刚切换视角 0否 UserVar Flag1 0 Rem 开始 按Tab寻找目标 Call Plugin Bkgnd KeyPress Hwnd 9 Delay
  • (5)项目中DTO代替@Transient使用

    Transient 实体类字段上 此实体类和数据库表对应 某实体类对象字段要返回给前端 数据库里面没有 查询忽视数据库里面对应的字段 上面这种方法很乱也不见得好 使用DTO对象在每层数据中传输
  • Python连接MySQL

    Python连接MySQL可以使用多种库 比如pymysql mysql connector python PyMySQL等 这里以pymysql为例 介绍Python连接MySQL的基本操作 1 安装pymysql库 pip instal