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

MySQL(三)

DDL(数据定义语言)

/* 创建数据库testone */
create database testone;
/* 查询数据库testone */
show databases;
/* 选择数据库testone */
use testone;
/* 删除数据库testone */
drop database testone;

创建表

create table table_name (column_name column_type);

查看表结构

desc table_name;

查看所有表名

show tables;

插入数据

insert into 表名(列名1,列名2,…) values (值1,值2,…);

查询表中所有列的数据

select * from 表名;

删除表

drop table 表名;

数据库实体在系统中的位置:/var/lib/mysql/

DML(数据操作语言)

新增数据

表中每一列都新增数据

insert into 表名 values (值1,值2,…);

表中部分列新增数据

insert into 表名(列名1,列名2,…) values (值1,值2,…);

修改数据

update 表名 set 列名1=值A,列名2=值B where 条件;

MySQL修改数据库管理员root密码语句

update mysql.user set authentication_string=password(“newpassword”) where user=”root”;

删除数据

delete from table_name 表名 where 条件;

DQL(数据查询语言)

查询表中所有列数据

select * from 表名;

查询表中部分列数据

select 列名1,列名2,… from 表名;

where 条件

操作符描述实例
=等号,检测两个值是否相等,如果相等返回true(A = B) 返回false。
<>, !=不等于,检测两个值是否相等,如果不相等返回true(A != B) 返回 true。
>大于号,检测左边的值是否大于右边的值, 如果左边的值大于右边的值返回true(A > B) 返回false。
<小于号,检测左边的值是否小于右边的值, 如果左边的值小于右边的值返回true(A < B) 返回 true。
>=大于等于号,检测左边的值是否大于或等于右边的值, 如果左边的值大于或等于右边的值返回true(A >= B) 返回false。
<=小于等于号,检测左边的值是否小于或等于右边的值, 如果左边的值小于或等于右边的值返回true(A <= B) 返回 true。

select * from 表名 where 列1=值1;

and 并且

select * from 表名 where 列1=值1 and 列2=值2;

or 或

select * from 表名 where 列1=值1 or 列2=值2;

between and 在xxx与xxx之间

select * from Student where 列1 BETWEEN 值1 and 值2;

in 在xxx集合内

select * from Student where Sid in (值1,值2,值3);

like 像xxx

select * from Student where Sname like ‘关键字%’;

% 为任意字符

union

用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。
SELECT expression1, expression2, … expression_n
FROM tables
[WHERE conditions]
UNION [ALL]
SELECT expression1, expression2, … expression_n
FROM tables
[WHERE conditions];

其中选项 ALL 为包含重复数据,union 默认是去重复的。

排序

select * from 表名 order by 列名;

默认是asc升序;降序是desc;

分组

SELECT column_name, function(column_name)
FROM table_name
WHERE column_name 运算符 value
GROUP BY column_name;

连接

INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。
RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

null值

select * from 表名 where 列名 is null;
select * from 表名 where 列名 is not null;

SQL语句执行顺序

第7步:SELECT 查询列表

第1步:FROM 表名

第2步:JOIN 关联表

第3步:ON 关联条件

第4步:WHERE 筛选条件

第5步:GROUP BY 分组字段

第6步:HAVING 分组后筛选条件

第8步:ORDER BY 排序字段

第9步:LIMIT 输出限制

DCL(数据控制语言)

权限级别

Global level:所有库,所有表的权限

Database level:某个数据库中所有表的权限

Table level:某个数据库中某个表的权限

Column level:表中某个字段的权限

权限语法

grant 权限列表 on 库名.表名 to ‘用户名’@’客户端主机’ [identified by ‘密码’ with option参数];

权限列表

all为所有权限,select为查询权限,update为更新权限,多个权限间用英文逗号,隔开

库名.表名

*.*:所有库所有表

库名.*:某个库下所有表

库名.表名:某个库下某个表

授予某个用户某些功能某个字段权限如下

grant SELECT (id), INSERT (name,age) ON mydb.mytbl to ‘用户名’@’主机地址’ identified by ‘登录密码’;

客户端主机

% 所有主机

192.168.2.% 即192.168.2网段所有主机

192.168.2.3 指定主机

localhost 指定主机,特指本机

with option

GRANT OPTION,用户被授予了某个权限,那么默认情况下,该用户是不能把这个权限授予给其他人的。但是可以使用 WITH GRANT OPTION 这个子句来让该用户可以将权限再授予给其他人。例如:grant SELECT (id), INSERT (name,age) ON mydb.mytbl to ‘用户名’@’主机地址’ identified by ‘登录密码’ with grant option;

查看自己权限

show grants;

查看别人权限

show grants for zhangsan@’192.168.174.132′;

收回权限

REVOKE 权限列表 ON 数据库名 FROM 用户名@‘客户端主机’;

收回所有权限:REVOKE ALL PRIVILEGES ON *.* FROM 用户名@’主机地址’;

用户管理

创建MySQL用户张三,仅能通过192.168.174.132登录且密码为zhangsan.123

create user zhangsan@’192.168.174.132′ identified by ‘zhangsan.123’;

root修改自己密码

  • 第一种:在linux命令行中输入:mysqladmin -uroot -p’旧密码’ password ‘新密码’
  • 第二种:在MySQL命令行输入:
    • 方法一: update mysql.user set authentication_string=password(‘新密码’) where user=’root’ and host=’localhost’;     flush privileges;
    • 方法二:set password=password(‘新密码’);     flush privileges;

遗忘root密码

第一步:修改配置文件 /etc/my.cnf ,添加选项 skip-grant-tables 跳过密码验证

第二步:重启MySQL,无密码即可登录,修改密码

systemctl restart mysqld

mysql -uroot

update mysql.user set authentication_string=password(‘新密码’) where user=’root’ and host=’localhost’;

flush privileges;

第三步:注释掉 /etc/my.cnf 中跳过密码部分

#skip-grant-tables

无需登录数据库读写数据库

-P 端口号     -h 主机地址

mysql -P 3306 -h 192.168.174.129 -uzhangsan -p’zhangsan.123′ -e ‘show databases;’

相关文章:

MySQL(三)

DDL&#xff08;数据定义语言&#xff09; 库 /* 创建数据库testone */ create database testone; /* 查询数据库testone */ show databases; /* 选择数据库testone */ use testone; /* 删除数据库testone */ drop database testone; 表 创建表 create table table_name (…...

汽车级肖特基二极管DSS220-Q 200V 2A

DSS220-Q是什么二极管&#xff1f;贵司有生产吗&#xff1f; 肖特基二极管DSS220-Q符合汽车级AEC Q101标准吗&#xff1f; DSS220-Q贴片肖特基二极管参数是什么封装&#xff1f;正向电流和反向电压是多大&#xff1f; DSS220-Q肖特基二极管需要100KK&#xff0c;有现货吗&#…...

maven jetty post 上传长度设置

maven jetty post 上传长度设置 <plugin><groupId>org.eclipse.jetty</groupId><artifactId>jetty-maven-plugin</artifactId><version>9.4.8.v20171121</version><configuration><scanIntervalSeconds>1</scanInter…...

LeetCode 面试题 03.03. 堆盘子

文章目录 一、题目二、C# 题解 一、题目 堆盘子。设想有一堆盘子&#xff0c;堆太高可能会倒下来。因此&#xff0c;在现实生活中&#xff0c;盘子堆到一定高度时&#xff0c;我们就会另外堆一堆盘子。请实现数据结构 SetOfStacks&#xff0c;模拟这种行为。SetOfStacks 应该由…...

Python-函数进阶

函数的多返回值 按照返回值的顺序&#xff0c; 写对应顺序的多个变量接受即可&#xff0c; 变量之间用逗号隔开&#xff0c;支持不同类型的数据return def test_return():return 1, 2, 3x, y, z test_return()print(x) print(y) print(z)函数参数种类 使用方式上的不同&am…...

实操Hadoop大数据高可用集群搭建(hadoop3.1.3+zookeeper3.5.7+hbase3.1.3+kafka2.12)

前言 纯实操&#xff0c;无理论&#xff0c;本文是给公司搭建测试环境时记录的&#xff0c;已经按照这一套搭了四五遍大数据集群了&#xff0c;目前使用还未发现问题。 有问题麻烦指出&#xff0c;万分感谢&#xff01; PS&#xff1a;Centos7.9、Rocky9.1可用 集群配置 iph…...

如何在 Ubuntu 上安装和使用 Nginx?

ginx&#xff08;发音为“engine-x”&#xff09;是一种流行的 Web 服务器软件&#xff0c;以其高性能和可靠性而闻名。它是许多流行网站使用的开源软件&#xff0c;包括 Netflix、GitHub 和 WordPress。Nginx 可以用作 Web 服务器、负载均衡器、反向代理和 HTTP 缓存等。 它以…...

seatunnel win idea 本地调试

调试FakeSource&#xff0c;LocalFile # Set the basic configuration of the task to be performed env {execution.parallelism 1job.mode "BATCH" }# Create a source to connect to Mongodb source {# This is a example source plugin **only for test and d…...

链路追踪Skywalking快速入门

目录 1 Skywalking概述1.1 微服务系统监控三要素1.2 什么是链路追踪1.2.1 链路追踪1.2.2 OpenTracing1、数据模型&#xff1a;2、核心接口语义 1.3 常见APM系统1.4 Skywalking介绍1、SkyWalking 核心功能&#xff1a;2、SkyWalking 特点&#xff1a;3、Skywalking架构图&#x…...

全开源影视APP源码带后台 苍穹影视APP源码 免受权带安装教程

苍穹影视 V20 全新后台七彩视界免受权开源源码此版本为天穹公益版开源无解密安装教程 全新后台很是都雅,源码全开源无加密。 PC 端对接教程&#xff1a; 建议在浮图下操作 正常安装前后端 然后安装米酷 cms 根据教程安装即可 米酷 cms 对接部门已被我改动&#xff0c;只要在安装…...

Qt+C++自建网页浏览器-Chrome blink最新内核基础上搭建-改进版本

程序示例精选 QtC自建网页浏览器-Chrome blink最新内核基础上搭建-改进版本 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<QtC自建网页浏览器-Chrome blink最新内核基础上搭建-改进版…...

这场科技巨变,有生之年有希望

见到一文&#xff0c;遂分享欲爆棚&#xff0c;总结如下。 具有人类水平的人工智能大约什么时候可以出现&#xff1f; 人类水平的人工智能&#xff0c;指的是&#xff0c;不需要借助人类&#xff0c;机器能够比人类更好地完成每项任务。 针对这个问题&#xff0c;有家机构在201…...

zemax优化功能

1、三种优化方法 zemax的三种优化方法中&#xff0c;局部优化会找到局部的极小值点&#xff0c;全局优化会找到整体的最小值点。 锤形优化适用于先用全局优化找到大概值后&#xff0c;进一步完善光学系统 对于评价函数单调或者局部最小值就是全局最小值的情况&#xff0c;使…...

Centos8关闭IPV6

编辑 /etc/sysctl.conf 文件。 vi /etc/sysctl.conf 放置以下条目以禁用所有适配器的 IPv6。 net.ipv6.conf.all.disable_ipv6 1 net.ipv6.conf.default.disable_ipv6 1 您可以使用以下条目为特定网络接口禁用 IPv6。 &#xff08;假设网卡名称是enp0s3&#xff09;。 n…...

华为OD七日集训第4期 - 按算法分类,由易到难,循序渐进,玩转OD

目录 一、适合人群二、本期训练时间三、如何参加四、7日集训第4期五、精心挑选21道高频100分经典题目&#xff0c;作为入门。第1天、数据结构第2天、滑动窗口第3天、贪心算法第4天、二分查找第5天、分治递归第6天、深度优先搜索dfs算法第7天、宽度优选算法&#xff0c;回溯法 六…...

flutter 抓包工具charles

本来的代码是忽略证书 ///忽略https证书校验&#xff0c;也就是能请求https的地址了(_dio?.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate (HttpClient client) {client.badCertificateCallback (X509Certificate cert, String host, int port) > tr…...

——二叉树

二叉树种类 二叉树有两种主要的形式&#xff1a;满二叉树和完全二叉树。 满二叉树 如果一棵二叉树只有度为0的结点和度为2的结点&#xff0c;并且度为0的结点在同一层上&#xff0c;则这棵二叉树为满二叉树。 完全二叉树 在完全二叉树中&#xff0c;除了最底层节点可能没…...

【linux命令讲解大全】103.Linux目录堆栈命令 dirs 的使用方法和选项详解

文章目录 dirs概要主要用途选项参数返回值例子注意 从零学 python dirs 显示目录堆栈。 概要 dirs [-clpv] [N] [-N] 主要用途 显示目录堆栈。 清空目录堆栈。 选项 -c&#xff1a;清空目录堆栈。-l&#xff1a;堆栈内以~开头的目录在显示时展开。-p&#xff1a;将目录堆…...

vue3项目应用font awesome6

element-plus框架的图标icon种类较少&#xff0c;一般无法涵盖所有业务情况 这时候引入font awesome6免费版&#xff0c;图标库非常丰富&#xff0c;一般可以满足所有业务场景 官网&#xff1a;https://fa6.dashgame.com/Font Awesome 6&#xff0c;一套始终绝佳的图标字体库…...

【JavaScript】JS语法入门到实战

文章目录 一、初识JavaScript1. 什么是JavaScript&#xff1f;2. JavaScript 和 HTML 和 CSS 之间的关系3. JavaScript的运行过程4. JavaScript的组成 二、JavaScript的书写形式三、变量1. 输入输出2. 变量的使用3. 数据类型 四、运算符五、分支和循环语句1. 分支语句2. 循环语…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的&#xff0c;可以通过集中管理和高效资源的分配&#xff0c;来支持多个独立的网站同时运行&#xff0c;让每一个网站都可以分配到独立的IP地址&#xff0c;避免出现IP关联的风险&#xff0c;用户还可以通过控制面板进行管理功…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库&#xff0c;提供了高效、安全的文本格式化功能&#xff0c;是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...