python_day11_pymysql

SQL基础语法回忆

show DATABASES;

在这里插入图片描述

use world;-- SELECT DATABASES();show TABLES;

在这里插入图片描述

CREATE TABLE Student(id int,name VARCHAR(10),age int,gender VARCHAR(5);

在这里插入图片描述
删除表

# 删除表
DROP TABLE Student;

插入操作

insert into student(id) VALUES(1),(2),(3);insert into student (id,name,age) VALUES (4 , 'jay',30),(5,'zhou',20);

删除数据

DELETE FROM student WHERE id = 1;

更新操作

UPDATE student SET name = 'zhao' where id = 2;update student set age = 18 where name = 'zhao';update student set age = 36, name = 'li' WHERE id = 3;

查询

select * from student;

在这里插入图片描述
条件查询

select * from student WHERE age >= 20;

在这里插入图片描述

分组聚合

在这里插入图片描述

-- 分组聚合
select avg(age),gender from student GROUP BY gender;

在这里插入图片描述
在这里插入图片描述

排序分页

在这里插入图片描述

-- 排序分页
select * from student where age >20 ORDER BY age asc;

在这里插入图片描述
跳过第一条,输出后面三条

SELECT * FROM student LIMIT 1,3;

在这里插入图片描述
输出前两条

SELECT * FROM student LIMIT 2;

在这里插入图片描述

在python中,使用第三方库:pymysql实现对mysql的操作

在这里插入图片描述
1、导包

"""
python pymysql库操作数据库
"""from pymysql import Connection

2、构建到MySQL数据库的链接

# 构建到MySQL数据库的链接
conn = Connection(host="localhost",port=3306,user="root",password="****",autocommit=False,  # 自动提交确认
)

验证是否链接成功,打印mysql版本号

print(conn.get_server_info())

在这里插入图片描述

3、获取游标对象(非查询)

# 获取游标对象
cursor = conn.cursor()
conn.select_db("test")  # 选择数据库,test or world

4、执行非查询SQL

cursor.execute("create table test_pymysql_2(id int,name varchar(10),gender varchar(5),age int);")

5、关闭链接

conn.close()

在这里插入图片描述
在这里插入图片描述

3、获取游标对象(查询)

# 获取游标对象
cursor = conn.cursor()
conn.select_db("world")  # 选择数据库,test or world

4、执行查询SQL,需获取结果语句fetchall() ,以元组形式返回

# 执行查询SQL,需获取结果语句
cursor.execute("select * from student")
results = cursor.fetchall()     # 获取查询结果
print(type(results))
print(results)for r in results:print(r)

5、关闭链接

conn.close()

在这里插入图片描述

3、获取游标对象(插入)

# 获取游标对象
cursor = conn.cursor()
conn.select_db("test")  # 选择数据库,test or world

4、执行插入数据操作,必须通过commit确认

# 执行插入数据操作,必须通过commit确认
cursor.execute("insert into test_pymysql_2 values (2,'zhao','男',18),(3,'li','男', 36),(4,'jay','女',30),(5,'zhou','女',20);")
conn.commit()  # 确认

5、关闭链接

conn.close()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

操作数据库后,勿忘关闭数据库链接,解除占用。

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

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

相关文章

STM32使用高级定时器输出互补pwm波

STM32使用高级定时器输出互补pwm波 前言硬件和软件cubemx新建工程打开Debug模式配置时钟源六大时钟的作用选择Crystal/Ceramic Resonator,即使用外部晶振作为HSE的时钟源。 配置时钟配置高级定时器TIM8和通用定时器TIM3这里大概解释一下配置pwm输出用到的几个参数我…

ylb-接口4投资排行榜

总览: 1、使用Redis存储投资信息 2、Redis常量类 在common模块constants包,创建一个Redis常量类(RedisKey): package com.bjpowernode.common.constants;public class RedisKey {/*投资排行榜*/public static fin…

Qt5.15.2安装

解释一下 Qt 的版本号 比如 5.15.2 是完整的 Qt 版本号,第一个数字 5 是大版本号(major),第二个数字 15 是小版本号(minor),第三个数字 2 是补丁号(patch)。 只要前面两个…

oracle 如何连同空表一起导出成dmp的方法

1、oracle导出dmp文件的时候,经常会出现一些空表,没有一并被导出的情况。 执行sql select alter table ||table_name|| allocate extent; from user_tables where num_rows0 or num_rows is null; 新建一个sql窗口,把查询结果的sql&#…

GSV6201替代方案|CS5466设计资料|CS5466原理图|typec转HDMI_8k方案芯片

GSV6201是一款高性能、低功耗、高性能的,USB Type-C备用模式显示端口1.4至HDMI 2.1转换器。通过集成增强型微控制器,GSV6201创造了一个经济高效的解决方案提供了上市时间优势。显示端口接收机支持高达32.4Gbps(HBR3,4通道&#xf…

uniapp和uview组件实现下拉触底刷新列表

下面是一个在UniApp中使用uView组件实现下拉触底刷新列表的示例,并使用Axios来请求分页数据列表: 首先,确保你已经在UniApp项目中添加了uView组件库。你可以在项目根目录执行以下命令安装它们: npm install uview-ui或者使用 Hb…

曲师大2023大一新生排位赛-D.Factor题解

D.Factor 题目描述 你有一个集合 ,和具有 个正整数的数组 . 最初,集合 为空(不包含任一元素)。你将按照以下方式填充集合 : 以此枚举数组 a 中的每个元素。对于数组中的第 i 个元素 ,生成 ​ 的因子集合 ​。如果…

使用对象解构赋值,将对象的某些属性赋值给另一个对象

在处理接口返回的数据时,我需要将接口返回的数据(对象)的某些属性用另一个对象进行接收,学习对象解构赋值之前,我一直使用的都是最笨的方法: this.formData.projectId res.data.projectId this.formData.…

idea中常用的快捷键

快捷键: 1.快速生成main方法 main/psvm public static void main(String[] args) {} 2.快速复制当前行的代码: ctrld 3.快速捕获异常: altctrlt 4.快速打印结果: sout/soutv System.out.println(s); System.out.println("s " s); 5.自动生成对象的返回值…

【运维工程师学习六】LAM部署搭建个人Discuz论坛

【运维工程师学习六】LAM部署搭建个人Discuz论坛 1、先卸载Mariadb再安装Mysql2、MySQL官网rpm包下载3、在rpm包路径下安装 YUM Repo 文件4、更新软件仓库本地数据库信息5、开始部署——php的安装6、搜索yum包7、开始部署——配置apache以支持php(1)配置…

GitHub上整理的一些实用的工具

1. Visual Studio Code 简称VScode,是一个轻量且强大的跨平台开源代码编辑器(IDE),支持Windows,OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过安装…

SylixOS下SSH和SFTP连接

简要 基于网络的连接(telnet,ftp)方便高效,但其是基于明文的通信,容易被窃取、篡改和攻击,存在网络安全问题,尤其在进行远程访问时,穿过复杂未知的公网环境非常危险,为此…

ELK-日志服务【es-安装使用】

目录 【1】安装-配置elasticsearch(01、02、03相同) 端口 【2】安装-配置-启动-Kibana 【3】浏览器访问测试(10.0.0.21:5601) 【4】使用kibana创建、更新、删除es索引、文档 【5】组es集群(投票选举机制&#xf…

【多线程】(六)Java并发编程深度解析:常见锁策略、CAS、synchronized原理、线程安全集合类和死锁详解

文章目录 一、常见锁策略1.1 乐观锁和悲观锁1.2 读写锁1.3 重量级锁和轻量级锁1.4 自旋锁1.5 公平锁和非公平锁1.6 可重入锁和不可重入锁 二、CAS2.1 什么是CAS2.2 CAS的实现原理2.3 CAS应用2.4 ABA问题 三、synchronized原理3.1 synchronized锁的特点3.2 加锁工作过程3.3 锁消…

自动驾驶多任务框架 MultiTask V3、HybridNets和YOLOP比较

目标检测和分割是自动驾驶汽车感知系统的两个核心模块。它们应该具有高效率和低延迟,同时降低计算复杂性。目前,最常用的算法是基于深度神经网络的,这保证了高效率,但需要高性能的计算平台。 在自动驾驶汽车的场景下,大多使用的都是计算能力有限的嵌入式平台,这使得难以满…

力扣 332. 重新安排行程

一、题目描述 给你一份航线列表 tickets,其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 开始。…

计算机网络基础-OSI七层模型 和 TCP/IP四层模型的对比

OSI七层模型 和 TCP/IP四层模型的对比 OSI七层模型: 理论上的网络通信模型 记忆: (物、链、网、输、会、示、用) TCP/IP四层模型: 实际上的网络通信标准 (1) 七层网络体系结构各层的主要功能: 应用层: 最上层的&am…

Nginx配置整合:基本概念、命令、反向代理、负载均衡、动静分离、高可用

一、基本概念 1.什么是Nginx Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理server。其特点是占有内存少。并发能力强,其并发能力确实在同类型的网页server中表现较好。 http服务器 Web服务器是指驻留于因特网上某种类型计算机的程…

请问支付功能如何测试

目录 01测试思维 02支付功能的测试点 一:支付的分类: 二:功能测试 三:接口测试 四:安全测试 五:测试点 01测试思维 要分析测试点之前,我们先来梳理一下测试思维。总结来说,任…

IP首部报文字段

一、IP首部报文字段 字段如下图所示 二、每个字段的含义 版本 表示 IP 协议的版本。通信双方使用的 IP 协议版本必须一致。目前广泛使用的IP协议版本号为 4,即 IPv4 首部长度 这个字段所表示数的单位是 32 位字长(1 个 32 位字长是 4 字节&#xff0…