当前位置: 首页 > news >正文

Python基础(八)——MySql数据库

一.数据库

【库——>表——>数据】

借助数据库对数据进行组织存储,借助SQL语言对数据库、数据进行操作管理

Mysql数据库

下载:https://www.mysql.com/

查看是否安装配置成功:

在这里插入图片描述

安装DBeaver用于Mysql数据库图形化

安装:https://dbeaver.io/

DBeaver用于数据库图形化

二.SQL语言

结构化查询语言(Structured Query Language),用于访问和处理数据库的标准计算机语言。

基于功能分为四类:

  • 数据定义:DDL(Data Definition Language)
  • 数据操纵:DML(Data Manipilation Language)
  • 数据控制:DCL(Data Control Language)
  • 数据查询:DQL(Data Query Language)

(部分)基础列类型:

  • int 整数
  • float 浮点数
  • varchar(长度) 文本,长度为数字,做最大长度限制
  • data 日期类型
  • timestamp 时间戳类型

特点:

  • 大小写不敏感
  • 可以单行或多行书写,以分号结束一条语句
  • 字符串只支持用单引号表示

命令

代码作用
– 注释内容单行注释,–后一定要有一个空格
# 注释内容单行注释,#后可以不加空格,最好加上
/* 注释内容 */多行注释
DDL操作:
mysql -uroot -p打开数据库
show databases;查看数据库
create database 数据库名 [charset UTF8];创建数据库,中括号内容表示可写可不写
drop database 数据库名;删除数据库
select database();查看当前使用的数据库
use 数据库名;使用某数据库
drop table 表名;删除表
drop table if exists 表名;删除表
create table 表名(列名称 列类型,列名称,列类型,……);创建表
show tables;查看数据库内有哪些表
exit退出数据库环境
DML操作:
insert into 表[(列1,列2,……)] values(值1,值2,……)[,(值1,值2,……),……];数据插入,[]中内容代表可省略
delete from 表名 [where 条件判断];数据删除,[]中内容代表可省略。条件判断:(列 操作符 值)操作符包括:=、<、>、>=、<=、!=
updata 表名 set 列=值 [where 条件判断];数据更新,[]中内容代表可省略。条件判断同数据删除中类似
DQL操作:
select 字段列表 from 表 [where 条件判断];数据查询,从表中选择某些列进行展示,其中字段列表可以使用*表示所有列。
select 列或聚合函数或* from 表 [where 条件判断] group by 列;分组聚合,聚合函数有:sum(列) ——求和、avg(列)——求平均值、min(列)——求最小值、max(列)——求最大值、count(列或*)——求数量。语法限制:group by中包含的列才能在非聚合函数中出现。
select 列或聚合函数或* from 表 where …… group by…… order by [asc或desc];结果排序,[]中内容代表可省略。asc代表升序(默认为升序),desc代表降序;
select 列或聚合函数或* from 表 where …… group by…… order by [asc或desc] limit n[,m];结果分页查询限制,[]中内容代表可省略。

执行顺序:

from—>where—>group by或聚合函数—>select—>order by—>limit

from和select必须写,其他可按需求省略

use world;create table student(name varchar(10),age int,id int
);
# 插入数据
insert into student(age) values(20),(18),(22),(30);
insert into student(name,id) values('li',20240001),('wang',20240002),('liu',20240003);/*
输出结果:(使用文本显示)
name|age|id      |
----+---+--------+| 20|        || 18|        || 22|        || 30|        |
li  |   |20240001|
wang|   |20240002|
liu |   |20240003|
*/# 删除数据
delete from student where age >= 18;
/*
输出结果:(使用文本显示)
name|age|id      |
----+---+--------+
li  |   |20240001|
wang|   |20240002|
liu |   |20240003|
*/# 更新数据
update student set name = 'qi' where id = 20240001;
/*
输出结果:(使用文本显示)
name|age|id      |
----+---+--------+
qi  |   |20240001|
wang|   |20240002|
liu |   |20240003|
*/# 查询数据
select name,id from student;
/*
输出结果:(使用文本显示)
name|id      |
----+--------+
qi  |20240001|
wang|20240002|
liu |20240003|
*/
select name,id from student where id > 20240001;
/*
输出结果:(使用文本显示)
name|id      |
----+--------+
wang|20240002|
liu |20240003|
*/# 查询student表中age大于20的数据,并按照age升序排序
select * from student where age > 20 order by age asc; # 查询student表中age大于20的数据,并按照age升序排序,显示前4条数据
select * from student where age > 20 order by age asc limit 4;# 查询student表中age大于20的数据,并按照age升序排序,显示第2条后的4条数据
select * from student where age > 20 order by age asc 
limit 2, 4;

记录学习过程的笔记,欢迎大家一起讨论,会持续更新

http://www.lryc.cn/news/441098.html

相关文章:

  • 统一网关--gateway(仅供自己参考)
  • 【Leetcode152】分割回文串(回溯 | 递归)
  • 基于BiGRU+Attention实现风力涡轮机发电量多变量时序预测(PyTorch版)
  • 深入探究 Flask 的应用和请求上下文
  • C++学习笔记(30)
  • Rust GUI框架 tauri V2 项目创建
  • C++继承(上)
  • 在 Vim 中打开文件并快速查询某个字符
  • oracle 条件取反
  • 力扣最热一百题——缺失的第一个正数
  • 零基础入门AI:一键本地运行各种开源大语言模型 - Ollama
  • 3.接口测试的基础/接口关联(Jmeter工具/场景一:我一个人负责所有的接口,项目规模不大)
  • 【matlab】将程序打包为exe文件(matlab r2023a为例)
  • 从底层原理上解释clickhouse查询为什么快
  • FEAD:fNIRS-EEG情感数据库(视频刺激)
  • 标准库标头 <bit>(C++20)学习
  • redis群集三种模式:主从复制、哨兵、集群
  • 【MATLAB源码-第225期】基于matlab的计算器GUI设计仿真,能够实现基础运算,三角函数以及幂运算
  • 基于yolov8的红外小目标无人机飞鸟检测系统python源码+onnx模型+评估指标曲线+精美GUI界面
  • 网络封装分用
  • 【Finetune】(一)、transformers之BitFit微调
  • ubuntu24系统普通用户免密切换到root用户
  • 如何应对pcdn技术中遇到的网络安全问题?
  • 【WRF工具】WRF Domain Wizard第一期:软件下载及安装
  • 使用CUBE_MX实现STM32 DMA功能 (储存器发送数据到外设串口)+(外设串口将数据写入到存储器)
  • 【JavaScript】数据结构之树
  • 【AI大模型】LLM主流开源大模型介绍
  • Uniapp的alertDialog返回值+async/await处理确定/取消问题
  • Spring Boot中的响应与分层解耦架构
  • 基于python+django+vue的图书管理系统