Python连接MySQL数据库

2023-11-19

一、准备模块

python连接SQL数据库首先需要用到 ”pymysql“ 模块,这里使用pip install指令来安装步骤如下:

1、在安装的python的路径下找到Scripts文件夹并打开,在路径上面写成“cmd”后回车

2、进入这个界面后输入pip install pymysql 开始安装

 二、连接数据库

用pymysql模块中的connect连接数据库,同时用cursor()函数创建游标,用于接收返回的结果。

代码:

import pymysql
# ---------连接--------------
connect = pymysql.connect(host='localhost',   # 本地数据库
                          user='root',
                          password='123456',
                          db='sys',
                          charset='utf8') #服务器名,账户,密码,数据库名称
cur = connect.cursor()
print(cur)

注:user与password是你数据库的用户名与密码,db为数据库名称没有可不填。

这里返回了一个游标实例对象,说明已经成功了。

三、对数据库进行操作

前面连接完成后就可以使用cur.execute()函数对数据库进行一个操作啦

下面附上几个案例:

# --------------------创建表-----------------
try:
    create_sqli = "create table sys (id int, name varchar(30),phone int);"
    cur.execute(create_sqli)
except Exception as e:
    print("创建数据表失败:", e)
else:
    print("创建数据表成功;")

# ---------------插入---------
try:
    insert_sqli = "insert into sys values(001, 'xiaoming',123456789);"
    cur.execute(insert_sqli)
except Exception as e:
    print("插入数据失败:", e)
else:
    # 如果是插入数据, 一定要提交数据, 不然数据库中找不到要插入的数据;
    connect.commit()
    print("插入数据成功;")

运行成功后就可以在电脑上的数据库中查找到相应的变化啦,最后记得关闭数据库的连接

#  ---------------------关闭数据库
cur.close()  # 关闭游标
connect.close()  # 关闭数据库连接

完整代码:

import pymysql
# ---------连接--------------
connect = pymysql.connect(host='localhost',
                          user='root',
                          password='123456',
                          db='sys',
                          charset='utf8') #服务器名,账户,密码,数据库名
cur = connect.cursor()

# --------------------创建表-----------------
try:
    create_sqli = "create table sys (id int, name varchar(30),phone int);"
    cur.execute(create_sqli)
except Exception as e:
    print("创建数据表失败:", e)
else:
    print("创建数据表成功;")

# ---------------插入---------
try:
    insert_sqli = "insert into sys values(001, 'xiaoming',123456789);"
    cur.execute(insert_sqli)
except Exception as e:
    print("插入数据失败:", e)
else:
    # 如果是插入数据, 一定要提交数据, 不然数据库中找不到要插入的数据;
    connect.commit()
    print("插入数据成功;")


#  ---------------------关闭数据库
cur.close()  # 关闭游标
connect.close()  # 关闭数据库连接

大三学生,希望大家多多关照点点关注~~

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

Python连接MySQL数据库 的相关文章

  • MySql 最后插入 ID,连接器 .net

    我正在使用 MySql Connector net 我需要获取最后一个查询生成的插入 id 现在 我假设返回值是MySqlHelper ExecuteNonQuery应该是最后一个插入id 但它只返回1 我正在使用的代码是 int inse
  • 如何在 phpmyadmin 中创建 MySQL 触发器

    我想在 MySQL 中创建一个触发器 我运行以下命令 mysql gt delimiter mysql gt CREATE TRIGGER before insert money BEFORE INSERT ON money gt FOR
  • 使 pdo::query 静态

    当我运行下面的代码时出现此错误 我通常使用 msql 函数 但我尝试使用 PDO 代替 怎么了 致命错误 第 14 行无法静态调用非静态方法 PDO query
  • 如何在SSRS中的表上创建热图?

    如何在 SSRS 中创建这样的内容 颜色将根据行中的值 承销商 从红色变为绿色 所有这些都在一个组中 您可以通过右键单击各个单元格并根据表达式设置填充颜色来完成此操作 In the Image below I ve mistakingly
  • 使用Powershell访问远程Oracle数据库

    我需要能够连接到我的网络上基于 Windows 7 的 Oracle 服务器 32 位 Oracle XE 我需要连接的机器运行 Windows 7 64 位 两台机器上都安装了 Powershell 我已在 64 位计算机上安装了 Ora
  • SQL参数化查询不显示结果

    我的 DataAcess 类中有以下函数 但它没有显示任何结果 我的代码如下 public List
  • 查询中列的顺序重要吗?

    当从 MySQL 表中选择列时 与表中的顺序相比 选择列的顺序是否会影响性能 不考虑可能覆盖列的索引 例如 您有一个包含行 uid name bday 的表 并且有以下查询 SELECT uid name bday FROM table M
  • MYSQL - 查找最近的前一天

    我可以以某种方式 不使用 PHP 找到一周中最近的前一天日期吗 Like 最近的上一个星期二的日期是哪一天 CURDATE INTERVAL WEEKDAY CURDATE wday IF WEEKDAY CURDATE gt wday 0
  • 如何使用 MySQL 的 LOAD DATA LOCAL INFILE 在导入 CSV 时将字符串日期更改为 MySQL 日期格式

    我正在使用 MySQL 的 LOAD DATA LOCAL INFILE SQL 语句将数据从 CSV 文件加载到现有数据库表中 下面是一个 SQL 语句示例 LOAD DATA LOCAL INFILE file csv INTO TAB
  • 如何在 Laravel 查询中使用多个 OR,AND 条件

    我需要 Laravel 查询帮助 我的自定义查询 返回正确结果 Select FROM events WHERE status 0 AND type public or type private 如何写这个查询Laravel Event w
  • SQLite HAVING 比较错误

    我有一个测试 SQLite 表 用于存储带有值的报告数据 CREATE TABLE IF NOT EXISTS test fact daily revenue date TEXT revenue NUMERIC product TEXT I
  • 如何在Oracle中使用Timestamp_to_scn和Scn_to_timestamp?

    我的查询结果是这样的 select cast to date a start time mm dd yyyy hh mi ss pm as timestamp date of call ora rowscn from calling tab
  • 使用两个日期之间的随机日期时间更新每一行

    我有一个专栏叫date created我希望每一行保存一个随机日期 日期距当前时间为 2 天 我正在运行以下查询 但它会更新具有相同随机日期的所有行 我希望每一行都是随机的并且不相同 update table set date create
  • Hibernate 对集合的查询过滤器

    我想执行以下查询 from Item i where i categoryItems catalogId catId 然而 这会产生以下异常 非法尝试取消引用集合 所以我用谷歌搜索 找到了这个 Hibernate 论坛帖子https for
  • 如何将可视选择的文本通过管道传输到 UNIX 命令并将输出附加到 Vim 中的当前缓冲区

    使用 Vim 我尝试将在可视模式下选择的文本通过管道传输到 UNIX 命令 并将输出附加到当前文件的末尾 例如 假设我们有一个 SQL 命令 例如 SELECT FROM mytable 我想做如下的事情
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • 如何正确转义mysql?

    我刚刚发现如果我写 select from tbl where name like foo 然后添加 foo 作为参数及其值 a 用户数据 它不会正确转义 我勒个去 它想要 a 即使我使用参数 我还是忍不住觉得我对 sql 注入持开放态度
  • sql server 按组排名

    问题看似简单 但我却无法理解 这是针对 sql 服务器的 what I have in a table What I need as a output cksum id cksum id 2162514679 204 2162514679
  • MySQL 按重复项从上到下排序

    我有一个lammer问题 因为我不是mysql专业人士 我有类似的字段 id color 1 red 2 green 3 yellow 4 green 5 green 6 red 我想按重复项进行分组 最常见的重复项先进行分组 所以应该这样
  • 将第三个表链接到多对多关联中的桥接表

    设计这个数据库的正确方法是什么 这是我设置表格的方式 我在名为 教师 的表和名为 仪器 的表之间存在多对多关系 然后我有一个连接两者的桥接表 我想将另一个表与 BRIDGE 表关联起来 意思是乐器 老师的组合 该表有 3 行 指定老师可以教

随机推荐

  • elementUI输入框后面带有单位

    添加 slot append
  • Qt源码学习之一define的使用

    这一次主要看的是qundostack 文件 之前关于命令模式有了一个初步的了解 希望在看完后可以有进一步的认识 或者关于Qt在这里有没有使用该模式有一个自己的定义 为了以后看起来更方便一些 这篇笔记以整理Qt里的宏定义为主 宏本身在代码里使
  • java九九乘法表

    package wo public class fi public static void main String args TODO Auto generated method 这串代码可以在创建的时候不勾选 以下是乘法表代码 for i
  • 目标检测综述-P1-yolov1(20201017初稿)

    目标检测综述 P1 yolov1 写在最初 一 yolov1的提出 二 yolov1如何进行检测 三 yolov1的loss函数 四 yolov1训练过程 1 训练前处理 2 五 yolov1的优缺点 写在最初 关于基于深度学习的目标检测相
  • maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-...

    错误信息出现在pom头的project标签 project标签内容是
  • Python命令行参数定义及注意事项

    在命令行中运行python代码是很常见的 下面介绍如何定义命令后面跟的参数 常规用法 Python代码中主要使用下面几行代码来定义并获取需要在命令行中赋值的参数 import argparse parser argparse Argumen
  • STM32(七)DMA总结库函数串口使用DMA

    系列文章目录 文章目录 系列文章目录 前言 一 配置步骤 二 代码实例 前言 DMA 全称为 Direct Memory Access 即直接存储器访问 DMA 传输方式无需 CPU 直接 控制传输 也没有中断处理方式那样保留现场和恢复现场
  • 百度网盘搜索网站

    目录 小白盘 https www xiaobaipan com 56网盘 https www 56wangpan com 盘搜搜 https www pansoso com 如风搜 http www rufengso net 及搜盘 htt
  • L2-045 堆宝塔PTA

    堆宝塔游戏是让小朋友根据抓到的彩虹圈的直径大小 按照从大到小的顺序堆起宝塔 但彩虹圈不一定是按照直径的大小顺序抓到的 聪明宝宝采取的策略如下 首先准备两根柱子 一根 A 柱串宝塔 一根 B 柱用于临时叠放 把第 1 块彩虹圈作为第 1 座宝
  • lauyi实现表格内显示文件名称,点击实现下载功能。

    定义监听事件 a class layui btn layui btn warm i class layui icon layui icon export i 导出 a js代码 field fileName title 文件名称 width
  • 数据结构之递归的应用场景迷宫问题

    递归是什么 简单的说 递归就是方法自己调用自己 每次调用的时传入不同的变量 递归有助于开发解决复杂的问题 同时可以使代码变的简洁 递归调用机制 直接上代码 用案例说明 我觉得在学校老师好像讲过很多遍了 但是过一端时间自己又写不出来 打印问题
  • DC/DC:闭环控制的隔离型反激变换电路设计及实验仿真(文章底部含仿真程序获取方式)

    反激变换电路在开关管导通时电源将电能转为磁场能储存在变压器中 当开关管关断时再将磁能转变为电能传送到负载 单端反激变换电路是由升降压 Buck Boost 变换电路派生而来的 电路图如图所示 反激变换电路的原理设计可参考文章 DC DC 单
  • 玩转树莓派 一、为你的树莓派烧录系统镜像

    准备工作 1 一台烧录镜像用的电脑 Windows Mac Linux 2 树莓派 3 显示器 高清连接线 根据不同型号需要不同的接口 4 键盘鼠标 5 Micro SD 读卡器 Micro SD 卡 16 128G 6 网线 不使用wif
  • 利用github.io(githubPages)免费托管个人静态网站/个人博客

    我们的个人博客或者静态网站可以托管到github就能通过github域名访问 git仓库配置 我采用的是自己编写一个html文件 githubPages搭建 首先需要在GitHub上创建Github Pages服务 具体步骤如下图 点击之后
  • 11 个Python教程来炫耀你的高级技能

    如果你可以以 Python 式的方式使用 Python 那么 Python 是一种优雅的语言 但不管你有多资深 真正用 Python 写代码都需要一些时间 本文将向你分享 11 个 Pythonic 技巧 让你的 Python 技能提升到一
  • hexo d时提示错误ssh: Could not resolve hostname e. coding. net: Name or service not known解决方案

    步骤1 命令符ping github com 得出的IP github com添加到 etc hosts hosts文件在C Windows System32 drivers etc目录 如拒绝修改 可右键添加用户完全控制权限
  • vue 项目全局修改element-ui的样式

    引入了element ui 但是和我们自己的样式颜色有很大的不同 官网自定义主题 点击查看 修改例子 在src文件下创建 element var scss 代码如下 color primary yellow 修改按钮primary的颜色 改
  • windows MongoDB安装和配置

    一 MongoDB安装和配置 1 进入官网下载你所需要的安装版本 点击直通官网 Step1 进入官网后 将看到如下界面 点击上方导航栏Products 找到Community Server Step2 选择自己需要的版本 系统和压缩方式 2
  • centos启动停留在started GNOME display manager

    Centos启动卡死进不去界面 停留在started GNOME display manager 在安装Centos7 9系统成功后 需要安装显卡驱动 显卡驱动有一个驱动程序自带这图形化界面 安装该驱动程序后 系统一直处于started G
  • Python连接MySQL数据库

    一 准备模块 python连接SQL数据库首先需要用到 pymysql 模块 这里使用pip install指令来安装步骤如下 1 在安装的python的路径下找到Scripts文件夹并打开 在路径上面写成 cmd 后回车 2 进入这个界面