数据库中的修改表结构、增删改查、用户权限操作
DDL ==》数据库定义语言 create database,create table drop table
DML ==》数据库操作语言 insert into,delete from,update set,
DQL ==》数据库查询语言 select .... from....
create database dcs;
use dcs;
show tables; 查看所有的表
desc 表名; ==》description描述一个表的结构
mysql数据库的基本的数据类型:
1)文本型 varchar,char
2)数值型 int,bigint(存手机号码),float浮点
3)日期型 date,date_format(日期格式化)
mysql数据库的约束类型:
1)主键约束 primary key
2)自增长约束 auto_increment
3)非空约束 not null
4)默认值约束 default
5)外键约束 foreign key
修改表结构
alter table dcs rename dcs1
altar table dcs add age int(20)
altar table dcs add age int(20) after id
alter table dcs change age sex int(1) primary key auto_increment
alter table dcs modify sex int(1) after id
alter table dcs drop sex ==》删除一个字段
mysql数据库里面的增
insert into 表名(字段1,字段2,字段3)values(值1,值2,值3) ==》增加一个
insert into 表名(字段1,字段2,字段3)values(值1,值2,值3),(值1,值2,值3) ==》增加多个值
insert into 表名 value (值1,值2,值3) ==》值对应的数量和字段的数量必须是一致
insert into 表名 value (值1,值2,值3),(值1,值2,值3)==》增加多个值
mysql数据库里面的删
delete from表名 where id =xxx
truncate 表名
drop table 表名
区别:delete只删除符合条件的数据,不删除表结构和定义,truncate快速删除表的所有数据,不删除表的结构,drop table是删除表结构和定义等等
mysql数据库里面的改 (同一个字段和就是用or,不同的字段和就是用and)
面试题:需要把student表当中成绩不合格和没有成绩的改为80分
update student set score=80 where score <60 or score is null
mysql数据库里面的查
select * from student ==》查所有的数据
select id,age,name from student ==》通过字段进行过滤
select * from student where age >25 and age <30
select * from student where age >=25 and age <=30
select * from student where age between 25 and 30
select * from student limit 10 ==》查表的前10行
select * from student limit 0,10
select * from student limit 1,4 ==》查2-5行
select * from student limit 18,6 ==》查19-24行
select * from student order by score desc limit 10; ==》通过分数降序排序并且查前10行
select * from student where name like “zhang%” ==》张姓开头的
select * from student where name like “%zhang%” ==》张姓在中间的
select * from student where name like “%zhang” ==》张姓结尾的
mysql数据库当中的聚合函数
count ==》count(*)和 count(1),count(字段) ==》count(1)性能会好点
distinct ==》去重
sum ==》求和
avg ==》求平均
max ==》最大
min ==》最小
排序函数 desc ==》descend下降 asc ==》ascend上升
select * from student order by score desc ==》降序排序
select * from student order by score asc ==》升序排序
分组函数 ==》看到每一个班级,每一个部门,每一个开头的都需要分组
select class,count(*) from student group by class ==》查每一个班级的人数总数和班级名称
1)先分组再筛选
求出每一个班级的数学成绩总分大于300分的班级名称和总分数
select class,sum(score) from student group by class having sum(score)>300
2)先筛选再分组
求出每一个班级中男生的班级名称和总分数
select class,sum(score) from student where sex=”男” group by class
3)先筛选再分组再筛选
求出每一个班级中男生的数学成绩总分大于300分的班级名称和总分数
select class,sum(score) from student where sex=”男” group by class having sum(score)>300
where和having之间的区别:
1)group by后面只能接having不能接where
2)where后面是可以接group by,表示先筛选再分组
3)where和having的作用非常相似,都是用来过滤条件的
多表连接【超级重点-需要背诵】
1)基本连接
select * from aa,cc where aa.id = cc.sid
2)内连接(求出2个表的交集部分)
select * from aa inner join cc on aa.id = cc.sid
3)左连接(以左表为主,左表数据会全部显示,然后右边没有的数据会补null处理)
select * from aa left join cc on aa.id = cc.sid
4)右连接(以右表为主,右表数据会全部显示,然后左边没有的数据会补null处理)
select * from aa right join cc on aa.id = cc.sid
5)硬连接(机械的拼接,aa表的字段数量必须和cc表的字段数量需要一致)
select * from aa union select * from cc
6)嵌套=(子查询)
求出张三的成绩?
aa表 ==》有张三的学号id,姓名name
cc表 ==》有张三的学号sid,成绩score
select id from aa where name = “zhangsan” ==》求出张三的id
select score from cc where sid = (select id from aa where name = “zhangsan”)
7)嵌套in(子查询,in后面可以接一个集合)
select score from cc where sid in (select id from aa where name = “zhangsan”)
8)临时表
select * from aa inner cc on aa.id = cc.sid ==》设置为临时表t
select t.score from (select * from aa inner cc on aa.id = cc.sid)t where t.name = “zhangsan”
用户权限操作
grant all privileges on *.* to “root”@”%” identified by “123456”
5. 数据库中的视图、索引、存储过程
视图
面试题:你对于视图的理解?
1)视图是基于基础表创建的,然后对视图进行增删改查的操作也会影响到基础表,对基础表进行增删改查的操作也会影响到视图
2)视图的作用? ==》可以对一些敏感信息和数据进行屏蔽,保护数据的安全
索引
分为普通索引,唯一索引,主键索引,联合索引
索引的作用:加快表数据查询的速度,像书的目录一样做一个检索的功能
存储过程
存储过程的作用:可以通过自定义存储过程写sql语句和逻辑,批量的造测试的数据
存储过程的语法:
create procedure dcs()
begin
#关于sql语句,增删改查的逻辑
end
call dcs() #调用存储过程
面试中常问的mysql数据库指令【杭州多测师_王sir】
相关文章:
面试中常问的mysql数据库指令【杭州多测师_王sir】
数据库中的修改表结构、增删改查、用户权限操作DDL 》数据库定义语言 create database,create table drop tableDML 》数据库操作语言 insert into,delete from,update set,DQL 》数据库查询语言 select .... from....crea…...
深度学习驱动的智能化革命:从技术突破到行业实践
第一章 深度学习的技术演进与核心架构 1.1 从浅层网络到深度学习的范式转变 深度学习的核心在于通过多层次非线性变换自动提取数据特征,其发展历程可划分为三个阶段:符号主义时代的规则驱动(1950s-1980s)、连接主义时代的浅层网络(1990s-2000s)以及深度学习时代的端到端…...
基于编译器特性浅析C++程序性能优化
最近在恶补计算机基础知识,学到CSAPP第五章的内容,在这里总结并且展开一下C程序性能优化相关的内容。 衡量程序性能的方式 一般而言,程序的性能可以用CPE(Cycles Per Element)来衡量,其指的是处理每个元素…...
服务器上通过ollama部署deepseek
2025年1月下旬,DeepSeek的R1模型发布后的一周内就火了,性能比肩OpenAI的o1模型,且训练成本仅为560万美元,成本远低于openAI,使得英伟达股票大跌。 下面我们来看下如何个人如何部署deepseek-r1模型。 我是用的仙宫云的…...
Android Coil总结
文章目录 Android Coil总结概述添加依赖用法基本用法占位图变形自定义ImageLoader取消加载协程支持缓存清除缓存监听 简单封装 Android Coil总结 概述 Coil 是一个用于 Android 的 Kotlin 图像加载库,旨在简化图像加载和显示的过程。它基于 Kotlin 协程࿰…...
《安富莱嵌入式周报》第351期:DIY半导体制造,工业设备抗干扰提升方法,NASA软件开发规范,小型LCD在线UI编辑器,开源USB PD电源,开源锂电池管理
周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版: https://www.bilibili.com/video/BV16C95YEEZs 《安富莱嵌入式周报》第351期:DIY半导体…...
Redis在人员管理系统中的应用示例
用户会话管理 场景:用户登录后存储会话信息,支持多服务器共享 实现: 用户登录成功后,生成唯一Token(如JWT),作为Redis的Key Value存储用户ID、角色、权限等信息,设置过期时间&…...
The Wedding Juicer POJ - 2227
采取从外层边界,一步一步向内部拓展的策略,具体来说,一开始将最外面一层的点加入队列,并标记这些点的坐标已经被访问 取出队列中高度最低的点,将其弹出,查看其上下左右的点,如果新点没有被访问…...
# 深入理解RNN(一):循环神经网络的核心计算机制
深入理解RNN:循环神经网络的核心计算机制 RNN示意图 引言 在自然语言处理、时间序列预测、语音识别等涉及序列数据的领域,循环神经网络(RNN)一直扮演着核心角色。尽管近年来Transformer等架构逐渐成为主流,RNN的基本原理和思想依然对于理…...
分布式锁—6.Redisson的同步器组件
大纲 1.Redisson的分布式锁简单总结 2.Redisson的Semaphore简介 3.Redisson的Semaphore源码剖析 4.Redisson的CountDownLatch简介 5.Redisson的CountDownLatch源码剖析 1.Redisson的分布式锁简单总结 (1)可重入锁RedissonLock (2)公平锁RedissonFairLock (3)联锁MultiL…...
同步 Fork 仓库的命令
同步 Fork 仓库的命令 要将您 fork 的仓库的 main 分支与原始仓库(fork 源)同步,您可以使用以下命令: 首先,确保您已经添加了原始仓库作为远程仓库(如果尚未添加): git remote add…...
基于PySide6的CATIA零件自动化着色工具开发实践
引言 在汽车及航空制造领域,CATIA作为核心的CAD设计软件,其二次开发能力对提升设计效率具有重要意义。本文介绍一种基于Python的CATIA零件着色工具开发方案,通过PySide6实现GUI交互,结合COM接口操作实现零件着色自动化。该方案成…...
OpenManus 的提示词
OpenManus 的提示词 引言英文提示词的详细内容工具集的详细说明中文翻译的详细内容GitHub 仓库信息背景分析总结 引言 OpenManus 是一个全能 AI 助手,旨在通过多种工具高效地完成用户提出的各种任务,包括编程、信息检索、文件处理和网页浏览等。其系统提…...
Ubuntu-docker安装mysql
只记录执行步骤。 1 手动下载myql镜像(拉去华为云镜像) docker pull swr.cn-east-3.myhuaweicloud.com/library/mysql:latest配置并启动mysql 在opt下创建文件夹 命令:cd /opt/ 命令:mkdir mysql_docker 命令:cd m…...
Electron桌面应用开发:自定义菜单
完成初始应用的创建Electron桌面应用开发:创建应用,随后我们就可以自定义软件的菜单了。菜单可以帮助用户快速找到和执行命令,而不需要记住复杂的快捷键,通过将相关功能组织在一起,用户可以更容易地发现和使用应用程序…...
理解 JavaScript 中的浅拷贝与深拷贝
在 JavaScript 开发中,我们经常需要复制对象或数组。然而,复制的方式不同,可能会导致不同的结果。本文将详细介绍 浅拷贝 和 深拷贝 的概念、区别以及实现方式,帮助你更好地理解和使用它们。 1. 什么是浅拷贝? 定义 …...
【Java开发指南 | 第三十五篇】Maven + Tomcat Web应用程序搭建
读者可订阅专栏:Java开发指南 |【CSDN秋说】 文章目录 前言Maven Tomcat Web应用程序搭建1、使用Maven构建新项目2、单击项目,连续按两次shift键,输入"添加",选择"添加框架支持"3、选择Java Web程序4、点击&…...
从0到1入门Linux
一、常用命令 ls 列出目录内容 cd切换目录mkdir创建新目录rm删除文件或目录cp复制文件或目录mv移动或重命名文件和目录cat查看文件内容grep在文件中查找指定字符串ps查看当前进程状态top查看内存kill终止进程df -h查看磁盘空间存储情况iotop -o直接查看比较高的磁盘读写程序up…...
golang 从零单排 (一) 安装环境
1.下载安装 打开网址The Go Programming Language 直接点击下载go1.24.1.windows-amd64.msi 下载完成 直接双击下一步 下一步 安装完成 环境变量自动设置不必配置 2.验证 win r 输入cmd 打开命令行 输入go version...
如何下载和使用Git:初学者指南
🌟 如何下载和使用Git:初学者指南 在当今的软件开发中,Git已经成为不可或缺的版本控制系统。无论你是独立开发者还是团队成员,掌握Git的基本操作都能帮助你更高效地管理代码。今天,我将详细介绍如何下载和使用Git&…...
使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式
一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...
VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
