首页/新闻资讯/正文详情

MySQL数据库命令

发布时间:2026/9/24 17:45:17 来源:云帆数科 栏目:资讯中心
MySQL数据库命令
目录m结束符库1、创建数据库2、查看数据库3、选择进入数据库4、修改数据库5、删除数据库表一、数据类型1、数值类型2、日期时间型3、字符串类型二、表的创建1、表结构的设计2、创建表3、查看表4、表修改1、修改表名2、修改字段名3、修改字段类型4、change5、增加字段6、删除字段5、删除表三、表的约束1、非空约束a、创建数据表时b、修改数据表时c、删除非空约束2、唯一约束3、主键约束a、创建表时b、修改表时4、默认值约束四、自动增长要求数据操作一、插入数据---insert1、插入单条数据验证数据是否插入插入部分数据插入多条数据Insert into table_name set 字段名更新数据---update删除数据---delete例子单表查询一、SELECT语句二、简单查询1、列出所有字段名称进行查询2、使用通配符*进行查询3、查询指定字段4、查询去重数据三、条件查询一、常见比较运算符1、例子2、包含运算符in3、逻辑运算符 or4、is null5、is not null6、like7、转义字符二、逻辑运算符1、not2、and 条件同时满足3、or4、between 初值 and 结束值5、优先级四、高级查询一、聚合函数1、count----计数2、sum() -------求和3、avg ----平均值嵌套函数4、max5、min(二)、分组查询(三)、排序查询(四)、限量查询(五)、内置函数1、concat函数 ----链接函数(六)、设置别名多表查询一、多表查询一、交叉连接查询二、内连接补充自然连接自连接三、外连接复合条件连接查询二、子查询一、in关键字结合子查询二、exists关键字(五)、比较运算符三、外键约束索引一、类型1、普通索引2、唯一性索引3、主键索引4、全文索引5、空间索引视图事务特性列---投影运算行------条件运算m结束符\G -----纵向结构显示且为结束符\g “”库1、创建数据库create database database_name2、查看数据库show databases; -----查看所有库 show create database database_name; ------查看指定库的细节 select database(); ------查看当前选择数据库前提是需要先进入该数据库3、选择进入数据库use database_name;4、修改数据库alter database database_name;5、删除数据库drop database database_name;表一、数据类型1、数值类型整数类型浮点数类型decimal(5,2) 5是数值总长度小数位为2定点数类型BIT类型2、日期时间型date3、字符串类型char 固定 varchar 可变长 enum 枚举型二、表的创建1、表结构的设计字段名 数据类型 ​ 是否为空 默认值 主键约束 唯一性约束 注释字端名 是否为外键 字端类型的属性2、创建表create table table_name ();()中间填字段名中间用“”分隔开------字段名 数据类型 primary key ----主键 not null -----不为空 comment ----注释 engine -----存储引擎 default --默认值 engineMYISAM default3、查看表desc table_name; ------查看指定的表基本结构show tables; ----查看所有表show create table table_name ; -----查看创建表的细节4、表修改1、修改表名alter table table_name rename to table_new_name; ------修改表名2、修改字段名alter table table_name rename column local_name_old to local_name_new; -----修改字段名3、修改字段类型alter table table_name modify dnsme char(16); --------修改字段类型4、changealter table table_name change local_name_old local_name_new char(20) first; -------修改表名字段类型字段位置必须要带上旧、新表名5、增加字段alter table table_name add id int first; alter table table_name add id int after id ; ------增加字段默认增加在最后first添加在第一行after后要加上字段表示添加在其之后6、删除字段alter table table_name drop id; -----删除字段验证------用desc5、删除表drop table table_name; -----删除表三、表的约束常见约束非空唯一主键1、非空约束NOT NULLa、创建数据表时在字段的数据类型后加“NOT NULL”CREATE TABLE tb_dept01( deptno INT, dname VARCHAR(14), local VARCHAR(13) NOT NULL );b、修改数据表时在ALTER TABLE语句中通过MODIFY或CHANGE重新定义字段的方式添加非空约束。ALTER TABLE tb_dept01 MODIFY dname VARCHAR(14) NOT NULL;c、删除非空约束ALTER TABLE tb_dept01 CHANGE COLUMN dname dname varchar(14);2、唯一约束一个字段也可以做成表级约束放到最下方3、主键约束主键约束只能做一个每个表中PRIMARY KEYa、创建表时CREATE TABLE tb_dept02( id INT PRIMARY KEY, dname VARCHAR(14) UNIQUE, local VARCHAR(13) NOT NULL );b、修改表时mysql ALTER TABLE tb_dept01 ADD PRIMARY KEY(deptno); ------添加ALTER TABLE tb_dept01 DROP PRIMARY KEY;-----删除4、默认值约束字段名 数据类型 default 默认值a、创建表时CREATE TABLE tb_emp02( id INT PRIMARY KEY, ename VARCHAR(16) UNIQUE, sal DECIMAL(7,2), status VARCHAR(13) DEFAULT 1 );b、修改表时ALTER TABLE tb_emp02 MODIFY sal DECIMAL(7,2) DEFAULT 0.00;c、删除ALTER TABLE tb_emp02 CHANGE sal sal DECIMAL(7,2);四、自动增长字段名 数据类型 auto_incerment要求1、一个表只能有一个2、整型或浮点型3、是键主键或候选键可以手动更改在前一个数值的基础上自动加1数据操作一、插入数据---insert1、插入单条数据Insert into table_name给整张表的全部数据进行插入验证数据是否插入*代表所有字段信息插入部分数据插入多条数据字符串日期需要加定界符“”或‘’英文状态下Insert into table_name set 字段名更新数据---update不加where对所有进行修改加上Where对于满足条件的进行修改删除数据---delete对表中数据进行删除例子表中数据全部删掉------空表单表查询一、SELECT语句select [distinct] *|{select_expr1, select_expr2, …} from 数据表名 [where 条件表达式1] [group by 字段名 [having 条件表达式2]] // 分组统计 [order by 字段名 [asc|desc]]s //排序 [limit [offset] 记录数] //限制输出二、简单查询1、列出所有字段名称进行查询SELECT 字段名1,字段名2,… FROM 数据表名; 字段名的顺序可以改变2、使用通配符*进行查询SELECT * FROM 数据表名;3、查询指定字段SELECT 字段名1,字段名2,… FROM 数据表名; 字段顺序可更改4、查询去重数据SELECT distinct 字段名 FROM 数据表名;SELECT distinct 字段名1,字段名2字段名3 FROM 数据表名; ------同时满足3个字段条件同时满足三、条件查询一、常见比较运算符比较运算符说明比较运算符左右两侧的操作数是否相等比较运算符左右两侧的操作数是否不相等!比较运算符左右两侧的操作数是否不相等比较运算符左侧操作数是否小于右侧操作数比较运算符左侧操作数是否小于等于右侧操作数比较运算符左侧操作数是否大于右侧操作数比较运算符左侧操作数是否大于等于右侧操作数BETWEEN ... AND ...比较数据是否存在于指定范围内IN包含比较数据是否存在于指定集合内IS NULL比较数据是否为NULLIS NOT NULL比较数据是否不为NULLLIKE模糊查找通配符匹配获取匹配到的数据列---投影运算行------条件运算1、例子SELECT * FROM 数据表名 where sal1000;2、包含运算符inselect * from 数据表名 where deptno in (10,20);3、逻辑运算符 ormysql select * from emp WHERE deptno10 or deptno20; 与in(10,20)结果相同4、is nullmysql select * from emp where mgr is null;5、is not nullmysql select * from emp where mgr is not null;6、likemysql select * from emp where mgr like;% ---长度为任意的字符串包括空字符 代表0~n _----一个_代表一个字符 ​mysql select * from emp where mgr like%一;----最后一位为一mysql select * from emp where mgr like__一;7、转义字符\%-----即%mysql select * from emp where mgr like%\%%; -----中间带%的数据二、逻辑运算符1、notmysql select * from emp where mgr not;2、and 条件同时满足mysql select * from emp where 字段名and字段名;3、ormysql select * from emp where 字段名or字段名;4、between 初值 and 结束值mysql select * from emp where 字段名 between 初值 and 结束值;5、优先级notandor四、高级查询一、聚合函数*不考虑空值字段名会看具体数据是否为空值1、count----计数mysql select count(*) from emp ;mysql select count(字段名) from emp ;2、sum() -------求和mysql select sum(cumn) from emp ;3、avg ----平均值mysql select avg(cumn) from emp ;嵌套函数mysql select avg(ifnull(cumn,0)) from emp ;4、maxmysql select max(sal) from emp ;5、minmysql select min(sal) from emp ;(二)、分组查询mysql select deptno,avg(sal),sum(sal) from emp group by deptno ;mysql select deptno,avg(sal) from emp group by deptno having avg(sal)3000;(三)、排序查询order by [asc|desc] 默认升序 desc---降序mysql select * from emp where deptno30 order by job;(四)、限量查询limit [,]记录数mysql select * from emp order by sal desc limit 5; ----前5个mysql select * from emp order by sal desc limit 1,4; ------1是偏移量偏移1位即从第2个开始计算4是要显示的数量(五)、内置函数1、concat函数 ----链接函数​2、(六)、设置别名mysql select * from emp e where e.deptno30; 表的别名mysql select ename as姓名 from emp e where e.deptno30; 表的别名 as可以省略多表查询一、多表查询一、交叉连接查询select 字段名 from 数据表1 cross join 数据表2select 字段名 from 数据表1 数据表2二、内连接又叫简单连接根据连接条件仅筛选出两张表中相匹配的记录select 查询字段 from 数据表1 [inner] join 数据表2 on 连接条件即 数据表1.字段数据表2.字段;补充自然连接可以去除重复字段select * from 数据表1 natural join 数据表2 把公共字段放在第一列自连接连接的两张表是同一张表必须用别名三、外连接select 所查字段 from 数据表1 left|right [outer] join 数据表2 on 匹配条件复合条件连接查询select 字段 from 数据表1数据表2数据表3 where 数据表1.字段数据表2.字段 and 数据表2.字段数据表3.字段二、子查询一、in关键字结合子查询mysql select * from dept where deptno in(select deptno from emp where sal2900);---工资大于2900mysql select * from dept where deptno not in(select deptno from emp where sal2900); ----工资小于等于2900二、exists关键字EXISTS关键字用于判断子查询的结果集是否为空若子查询的结果集不为空返回TRUE否则返回FALSE。select * from dept where exists (select * from emp where emp.deptnodept.deptno and emp.sal2900); emp.deptnodept.deptno ----连接条件三、any关键字任意一个必须与比较操作符一起用select * from emp where deptno10 and salany(select sal from emp where deptno20);四、all关键字所有select * from emp where deptno10 and salall(select sal from emp where deptno20);(五)、比较运算符三、外键约束注意主表和从表的关联字段的数据类型必须是一样的alter table 从表名 add constraint fk_外键字段名 foreign key(外键字段名) references 主表名(主键字段名) fk_外键字段名 ----可任意更改,不能加引号查看show create table 表名 \GALTER TABLE 从表名 ADD CONSTRAINT [外键名称] FOREIGN KEY(外键字段名) REFERENCES 主表表名(主键字段名); [ON DELETE {CASCADE | SET NULL | NO ACTION | RESTRICT}] [ON UPDATE {CASCADE | SET NULL | NO ACTION | RESTRICT}] 默认拒绝参数名称功能描述CASCADE主表中删除或更新记录时同时自动删除或更新从表中对应的记录SET NULL主表中删除或更新记录时使用NULL值替换从表中对应的记录不适用于已标记为NOT NULL的字段NO ACTION拒绝主表删除或修改外键关联列RESTRICT拒绝主表删除或修改外键关联列。在不定义ON DELETE和ON UPDATE子句时这是默认设置也是最安全的设置删除delete from emp where deptno(select deptno from dept WHERE dname人力资源部);删除主键数据DELETE FROM dept WHERE dname人力资源部;删除外键约束ALTER TABLE emp DROP FOREIGN KEY fk_deptno;索引一、类型1、普通索引是MySQL中的基本索引类型使用KEY或INDEX定义不需要添加任何限制条件。2、唯一性索引创建唯一性索引的字段允许有NULL值但需要保证索引对应字段中的值是唯一的。3、主键索引是一种特殊的唯一性索引用于根据主键自身的唯一性标识每一条记录。主键索引的字段不允许有NULL值。4、全文索引主要用于提高在数据量较大的字段中的查询效率。5、空间索引只能创建在空间数据类型的字段上。创建索引create index 索引名 ON 表名 (属性名 [ ( 长度) ] [ asc | desc ]);查看索引Show index from table_name ; ----纯查看索引Show create table table_name ;删除索引drop index index_name on table_name ;alter table table_name drop index index_name ;视图是一张虚拟表创建create [or replace] view 视图名[(字段名)] as单表查看修改事务特性原子性隔离性一致性持久性p192 第二个蓝跳 查询事务隔离级别select tx_isolation;

相关推荐

ROCKY LINUX10安装DOCKER
ROCKY LINUX10安装DOCKER

1.实验环境ROCKY LINUX102.安装脚本#!/bin/bash if command -v docker &> /dev/null; thenecho "Docker 已安装,版本:$(docker --version)" elseecho "Docker 未安装,现在开始安装"#1.安装包 dnf install -y epel-release#2.… · 2026/9/24 17:45:17

数据结构——二叉搜索树(BST)
数据结构——二叉搜索树(BST)

二叉排序树,首先是二叉树1.BST的定义:(1)空树也是二叉搜索树(2)若二叉搜索树的左子树不为空,则其左子树的所有节点中关键值都小于其根节点的关键值(3)若二叉搜索树的右子… · 2026/9/24 17:45:11

Jev模型是什么?从MES异常分流、ERP接口重试到项目风险升级,看它能否成为制造业AI的判断层
Jev模型是什么?从MES异常分流、ERP接口重试到项目风险升级,看它能否成为制造业AI的判断层

Jev模型是什么?从MES异常分流、ERP接口重试到项目风险升级,看它能否成为制造业AI的判断层 Jev不是“又一个会聊天的大模型”,而是一个试图把 AI 放进软件判断节点里的结构化决策模型。它真正值得观察的地方,不是能不能写得更像人&… · 2026/9/24 17:45:11

Java Web购物车系统实战:webbikeshop部署与改造
Java Web购物车系统实战:webbikeshop部署与改造

简介:基于Javaweb的山地车网上购物系统完整项目,面向正在学习JavaWeb开发、需要综合实战练习的在校生或初级开发者。项目直接导入即可运行使用,覆盖从登录注册到店铺管理、主页商品浏览与搜索、购物车、下单支付直至发货收货评论的完整交易链… · 2026/9/24 18:15:10

pycrfsuite实战糖尿病NER:从特征工程到知识图谱构建
pycrfsuite实战糖尿病NER:从特征工程到知识图谱构建

简介:一份面向天池瑞金医院MMC人工智能辅助构建知识图谱大赛初赛的完整参赛方案,聚焦糖尿病相关医疗命名实体识别,基于pycrfsuite实现。资源包共1699个文件、约11.65MB,其中784个csv与485个txt构成训练语料和特征数据,… · 2026/9/24 18:15:10

天池瑞金糖尿病NER项目:pycrfsuite源码拆解与复现指南
天池瑞金糖尿病NER项目:pycrfsuite源码拆解与复现指南

简介:面向天池瑞金医院MMC人工智能辅助构建知识图谱大赛初赛,这份压缩包是基于pycrfsuite的糖尿病相关医疗命名实体识别参赛方案。资源面向参赛选手、自然语言处理学习者和医疗文本挖掘从业者,包含设计文档、源代码及配套数据说明&#xff0c… · 2026/9/24 18:15:10

Python智能垃圾分类系统源码解析:从毕业设计到Grad-CAM可视化
Python智能垃圾分类系统源码解析:从毕业设计到Grad-CAM可视化

简介:这份资源是一套基于Python开发的智能垃圾分类系统完整源码与部署指南,面向计算机相关专业的毕业设计、期末大作业及课程实践场景,适合具备一定Python基础、希望借助深度学习完成视觉识别项目的学生与开发者。压缩包共24个文件&#xff0… · 2026/9/24 18:15:10

Keras-YOLOv3息肉检测实战:从数据准备到anchor聚类优化
Keras-YOLOv3息肉检测实战:从数据准备到anchor聚类优化

简介:这份资源面向具备一定深度学习基础的开发者与医疗影像分析学习者,提供基于Python与Keras-YOLOv3实现息肉目标检测的完整工程代码。内容围绕YOLOv3的多尺度预测与网格划分机制展开,涵盖数据预处理、Darknet模型构建、损失函数与优化器配置… · 2026/9/24 18:15:10

YOLO无人机目标检测数据集:VOC/COCO/YOLO标签格式转换与训练避坑实战
YOLO无人机目标检测数据集:VOC/COCO/YOLO标签格式转换与训练避坑实战

简介:面向目标检测开发者和无人机视觉学习者,这份YOLO无人机目标检测数据集围绕真实航拍场景构建,包含5000张高质量图片,场景丰富,经LabelImg精细标注,同步提供VOC、COCO、YOLO三种格式标签,分别… · 2026/9/24 18:15:04

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13

1D-CNN时间序列建模实战:从Conv1d原理到工业落地
1D-CNN时间序列建模实战:从Conv1d原理到工业落地

简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26

柔软的L:汉语语流中被忽视的舌肌张力控制
柔软的L:汉语语流中被忽视的舌肌张力控制

1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码