第十三天-mysql交互

news2024/12/26 2:18:29

目录

1.安装MySQL connector

方式1:直接安装

方式2:下载

2.创建链接

3.游标Cursor

4.事务控制

5. 数据库连接池

1. 使用

6.循环执行SQL语句


不了解mysql的可以先了解mysql基础

1.安装MySQL connector

1. MySQL connector 是MySQL官方驱动模块,兼容性特别好

方式1:直接安装

pip install mysql-connector-python

方式2:下载

1. 下载:http://dev.mysql.com/downloads/connector/python/

2. 选择8.0.24有windows版本

3.下载后运行

2.创建链接

  • 方式1

 

  • 方式2

注意最后关闭链接: con.close()

3.游标Cursor

1. MySQL Connector里面的游标是用来执行SQL语句的,而且查询的结果集也会保存在游标中

cursor=con.cursor()

cursor.execute(sql语句)

2.使用

3.防止sql注入攻击,采用sql预编译机制

4.fetchone\fetchall

一:fetchone() :
 
    返回单个的元组,也就是一条记录(row),如果没有结果 , 则返回 None
 
    cu.execute("select user,password from user where user='%s'" %name)
    arr= cur.fetchone()   ----此时 通过 arr[0],arr[1]可以依次访问user,password
 
二:fetchall() :
 
   返回多个元组,即返回多条记录(rows),如果没有结果,则返回 ()
 
   cur.execute("select * from user")
 
***注意:在MySQL中是null,而在Python中则是None
 
①查询出有多条数据时:
 
cursor.fetchone():将只取最上面的第一条结果,返回单个元组如('id','name'),
然后多次循环使用cursor.fetchone(),依次取得下一条结果,直到为空。
 
cursor.fetchall() :将返回所有结果,返回二维元组,如(('id','name'),('id','name')),
 
②查询只有一条数据时:
 
cursor.fetchone():将只返回一条结果,返回单个元组如('id','name')。
 
cursor.fetchall() :也将返回所有结果,返回二维元组,如(('id','name'),),

4.事务控制

1.事务函数

2.异常处理


from mysql import connector

#创建链接

try:
    mysql_config={
        "host":"localhost",
        "port":3306,
        "user":"root",
        "password":"xxx",
        "database":"xxx"
    }
    con=connector.connect(**mysql_config)
    #开启事务
    con.start_transaction()
    #开启游标
    cursor=con.cursor()
    sql=("INSERT INTO `ewoe-wx`.`t_sys_dict`(`dict_code`, `dict_pcode`, `dict_name`, `dict_val`, `seq_num`, `remark`)"
         " VALUES ( %s, %s, %s, %s, %s, %s)")
    cursor.execute(sql,("test","0","测试","0","1","测试"))
    #提交事务
    con.commit()
except Exception as e:
    if "con" in dir():
        con.rollback()
    print("执行异常:",e)
finally:
    if "con" in dir():
        con.close()

5. 数据库连接池

1. 使用

注意:与正常链接对比不需要关闭链接

6.循环执行SQL语句

7.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1472234.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VirtualBox+Vagrant安装linux

一、VirtualBox安装 VirtualBox官网:Oracle VM VirtualBox 这里采用VirtualBox--7.0.0 版本 二、Vagrant安装 Vagrant官网:Vagrant by HashiCorp Vagrant镜像仓库:Discover Vagrant Boxes - Vagrant Cloud 这里采用Vagrant--2.4.1版本 在…

Python从入门到精通指南【第101篇—入门到精通】【文末送书-24】

文章目录 Python从入门到精通指南第一步:入门基础1.1 安装Python1.2 Hello World1.3 变量和数据类型1.4 控制流程 第二步:深入学习2.1 函数和模块2.2 列表、元组和字典2.3 文件操作 第三步:高级主题3.1 面向对象编程3.2 异常处理3.3 正则表达…

猫头虎分享已解决Bug || 无效的请求参数:InvalidRequestException

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

DP读书:《工程热力学(第二版)》(一)绪论——能量及其利用

DP读书:《工程热力学(第二版)》绪论 0.1 能量及其利用 热力学——研究对象:能量 能量 物质能量传递 普遍规律 能源:直接提供能量的物质资源 一次能源:热能占比85% 直接利用——>冶金、采暖、炊煮 …

全网最全AI绘画工具汇总(二)

一.AI绘画 图像 创造人工智能艺术的方式共有多种方法,包括使用数字模式的程序“基于规则”的图像生成、模拟笔触和其他绘画效果的算法,以及人工智能或深度学习算法等。 最早的重要人工智能艺术系统之一是AARON,由哈罗德科恩于1960年代末开…

PureFlash v1.9.1特性介绍

PureFlashv1.9.1版本特性主要有3个: 1. 支持RDMA网络 使用RDMA协议可以大大减少对CPU的消耗,性能提升30%以上。 PureFlash的网络配置分为存储节点间网络(存储后端网)和客户端网络(前端网)。都支持使用RD…

使用vuetify实现全局v-alert消息通知

前排提示,本文为引流文,文章内容不全,更多信息前往:oldmoon.top 查看 简介 使用强大的Vuetify开发前端页面,结果发现官方没有提供简便的全局消息通知组件(像Element中的ElMessage那样)&#xf…

桶装水配送小程序有什么功能 怎么制作

桶装水配送小程序是一种方便快捷的订水服务工具,可以帮助用户轻松订购桶装水,并实时跟踪订单配送情况。下面具体介绍送水小程序的功能。 1. 客户订水功能:用户可以通过小程序轻松选择需要的桶装水数量和配送时间,填写联系信息和地…

【AI Agent系列】【MetaGPT多智能体学习】0. 环境准备 - 升级MetaGPT 0.7.2版本及遇到的坑

之前跟着《MetaGPT智能体开发入门课程》学了一些MetaGPT的知识和实践,主要关注在MetaGPT入门和单智能体部分(系列文章附在文末,感兴趣的可以看下)。现在新的教程来了,新教程主要关注多智能体部分。 本系列文章跟随《M…

【VTKExamples::PolyData】第三十八期 Outline

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例Outline,并解析接口vtkOutlineFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1. Outline // Create…

DP读书:《半导体物理学(第八版)》(一)绪论 3min速通

DP读书:《半导体物理学(第八版)》刘恩科 3min速通半导体物理之绪论 DP读书:《半导体物理学(第八版)》刘恩科绪论第一章 半导体中的电子状态1.1 半导体的晶格结构和结合性质1.1.1 金刚石型结构和共价键1.1.2…

docker下gitlab安装配置

一、安装及配置 1.gitlab镜像拉取 docker pull gitlab/gitlab-ce:latest2.运行gitlab镜像 docker run -d -p 443:443 -p 80:80 -p 222:22 --name gitlab --restart always --privilegedtrue -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v …

SAP MD81创建客户独立需求简介

正常我们用的最多的计划独立需求都是使用的是MD61 ,今天我们说下SAP的另外的一个标准功能客户独立需求MD81。虽然SAP给这个TCODE的描述是客户独立需求,但是实际是没有地方去关联对应的客户信息的。或者可以理解为是一个关联销售订单的一个计划独立需求。 1、MD81在SAP中的路…

交换两个整数

交换两个整数 题目描述:解法思路:解法代码:运行结果: 题目描述: 写⼀个函数Swap,可以交换两个整数的内容。注意必须实现成函数完成。 输入2个整数,调用自定义函数Swap,完成2个整数的…

赵本山念王小利写给李琳的信真费劲,原来不会写的字就打个圈(零)

赵本山念王小利写给李琳的信真费劲,原来不会写的字就打个圈(零) --小品《同桌的你》(中3)的台词 王小利:多亏桂琴给我帮助,借我铅笔给我橡皮,考试时候让我抄题, 赵本山&…

【Java程序设计】【C00287】基于Springboot的疫情防控期间某村外出务工人员管理系统(有论文)

基于Springboot的疫情防控期间某村外出务工人员管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的疫情防控期间某村外出务工人员信息管理系统 本系统分为系统功能模块、管理员功能模块、用户功能模块、采集…

6.3 认证授权模块 - 用户认证

认证授权模块 - 用户认证 文章目录 认证授权模块 - 用户认证一、用户认证 基础1.1 连接数据库认证1.1.0 用户表 xc_user1.1.1 分析1.1.2 安全管理配置 WebSecurityConfig1.1.3 自定义UserDetailsService1.1.4 授权服务器配置 AuthorizationServer 1.2 扩展用户身份信息1.2.1 修…

【JavaScript 漫游】【022】事件模型

文章简介 本篇文章为【JavaScript 漫游】专栏的第 022 篇文章,对 JavaScript 中事件模型相关的知识点进行了总结。 监听函数 浏览器的事件模型,就是通过监听函数(listener)对事件做出反应。事件发生后,浏览器监听到…

【栈与队列】用队列实现栈、用栈实现队列

【栈与队列】用队列实现栈、用栈实现队列 一、232. 用栈实现队列二、225. 用队列实现栈 一、232. 用栈实现队列 简单 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty): 实现 MyQueue 类&…

树的基本概念和结构

目录 树的概念和结构 树的相关概念 树的特点 树的表示 树的基本应用 树的概念和结构 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合 📌 把它叫做树是因为它看起来像一棵倒挂的树&#x…