【Mysql】用户权限操作、处理重复数据

用户权限操作

登陆进入数据库 输入用户名和密码

#mysql -uroot -p;

创建一个名字为“mei_db” 编码为utf-8的数据库

create database if not exists `mei_db` default character set utf8 collate utf8_general_ci;
# 创建用户,用户可以通过特定ip的客户端访问数据库 
CREATE USER '用户名'@'ip' IDENTIFIED BY '密码';
实例:
# 创建用户 mei,密码是123456 ;  @'%' 表示用户可以通过任意ip的客户端访问数据库
CREATE USER 'mei'@'localhost' identified by '123456';  
CREATE USER 'mei'@'%' IDENTIFIED BY '123456';# 赋予用户权限,让其拥有权限1和权限2去操作特定数据库的所有表
GRANT 权限1, 权限2 ON '数据库名'.* TO '用户名'@'ip';# 赋予权限给用户testUser去操作数据库dbtest的所有表
# 如果要赋予所有权限,可以用GRANT ALL
GRANT SELECT, INSERT, UPDATE, REFERENCES, DELETE, CREATE, DROP, ALTER, INDEX, TRIGGER, CREATE VIEW, SHOW VIEW, EXECUTE, ALTER ROUTINE, CREATE ROUTINE, CREATE TEMPORARY TABLES, LOCK TABLES, EVENT ON `mei_db`.* TO 'mei'@'%';
GRANT ALL privileges  ON `mei_db`.* TO `mei`@`%`;# 让该用户可以再授权给其他人
GRANT GRANT OPTION ON `dbtest`.* TO `testUser`@`%`;#刷新权限
flush privileges;#退出mysql
exit;

处理重复数据

1.防止重复数据 (UNIQUE)

create table dong1
(first_name CHAR(20) NOT NULL,last_name CHAR(20) NOT NULL,sex CHAR(10),UNIQUE (last_name, first_name)       //创建first_name、last_name的唯一性
);

注意:除了unique来设置字段的唯一性,也可以通过primary 来设置双主键,但是,后者多用于索引,而且要求not null
1、primary key = unique + not null
2、唯一约束和主键一样都是约束的范畴,而且都可以作为外键的参考,不同的是,一张表只能有一个主键
3、主键和唯一约束的创建需要依靠索引,如果在创建主键或唯一约束的时候没有已经建好的索引可以使用的话,Oracle会自动建立一个唯一的索引。

2.统计重复数据

mysql> select * from yan3;
+----+----------+-----------+------------+
| id | book     | zuozhe    | shijian    |
+----+----------+-----------+------------+
|  1 | meimei00 | xiaowen   | 2022-01-02 |
|  2 | meimei01 | xiaowen   | 2022-05-19 |
|  3 | meimei02 | xiaowen02 | 2022-05-19 |
|  4 | meimei03 | xiaowen03 | 2022-05-19 |
|  5 | dongdong | yanyan    | 2022-05-19 |
+----+----------+-----------+------------+
5 rows in set (0.00 sec)mysql> select count(*) as nu,zuozhe from yan3   -> group by zuozhe-> having nu>2;          //统计重复2次以上的数据
+----+---------+
| nu | zuozhe  |
+----+---------+
|  2 | xiaowen |
+----+---------+
1 row in set (0.01 sec)

3.过滤重复数据

select distinct zuozhe from yan3;             //方法一:通过distinct来过滤统计数据
select zuozhe from yan3 group by zuozhe;      //方法二:通过group by 来过滤统计数据

4.删除重复数据

原理:将过滤后的数据,重新建表后,删除原来旧表,将新表名改为旧表名

//原始表数据
mysql> select * from yan3;
+----+-----------+-----------+------------+
| id | book      | zuozhe    | shijian    |
+----+-----------+-----------+------------+
|  1 | meimei00  | xiaowen   | 2022-01-02 |
|  2 | meimei01  | xiaowen   | 2022-05-19 |
|  3 | meimei02  | xiaowen02 | 2022-05-19 |
|  4 | meimei03  | xiaowen03 | 2022-05-19 |
|  5 | dongdong  | yanyan    | 2022-05-19 |
| 23 | dongdong2 | yanyan    | NULL       |
| 24 | dongdong3 | yanyan    | NULL       |
+----+-----------+-----------+------------+
7 rows in set (0.00 sec)//查询出的结果,重新建表mysql> create table new_yan3 select book,zuozhe,shijian from yan3 group by zuozhe;
Query OK, 4 rows affected (0.04 sec)
Records: 4  Duplicates: 0  Warnings: 0//删除原来表   mysql> drop table yan3;
Query OK, 0 rows affected (0.01 sec)//将新表重新命名为原来表名字 mysql> alter table new_yan3 rename to yan3;
Query OK, 0 rows affected (0.00 sec)//查看结果,达到删除重复数据的目的mysql> select * from yan3;
+----------+-----------+------------+
| book     | zuozhe    | shijian    |
+----------+-----------+------------+
| meimei00 | xiaowen   | 2022-01-02 |
| meimei02 | xiaowen02 | 2022-05-19 |
| meimei03 | xiaowen03 | 2022-05-19 |
| dongdong | yanyan    | 2022-05-19 |
+----------+-----------+------------+
4 rows in set (0.00 sec)

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

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

相关文章

2024年【化工自动化控制仪表】考试题及化工自动化控制仪表最新解析

题库来源:安全生产模拟考试一点通公众号小程序 2024年化工自动化控制仪表考试题为正在备考化工自动化控制仪表操作证的学员准备的理论考试专题,每个月更新的化工自动化控制仪表最新解析祝您顺利通过化工自动化控制仪表考试。 1、【单选题】()指用多个相…

Flask 入门5 :过滤器

1. 自定义过滤器 过滤器本质上是 Python 的函数,他会把被过滤的值当作第一个参数传给这个函数,函数经过一些逻辑处理后,再返回新的值。在过滤器函数写好后,可以通过app.template_filter 装饰器或者是app.add_template_filter函数…

spring-security authentication persistence

翻译版本【spring-security 6.2.1】persistence Persisting Authentication 用户第一次请求受保护的资源时,系统会提示他们输入凭据。提示输入凭据的最常见方法之一是将用户重定向到登录页面。未经身份验证的用户请求受保护的资源的HTTP交换可能如下所示: 例1。未…

关于Linux和消息队列常见的十道面试题

实际工作中如何排查CPU飙升问题? 在实际工作中,我们可以通过以下步骤来排查CPU飙升的问题: 使用系统监控工具:首先,我们可以使用系统监控工具,如top命令,来查看所有进程占系统CPU的排序。这样可…

编程笔记 html5cssjs 079 JavaScript 循环语句

编程笔记 html5&css&js 079 JavaScript 循环语句 循环语句1. for 循环2. while 循环3. do...while 循环4. for...in 循环5. for...of 循环 小结 在JavaScript中,有几种不同的循环语句用于执行重复的代码块。 循环语句 以下是一些主要的循环类型及其详解与示…

PHP三级分类数据处理

一、原始数据 function getDatas(){return [[component > system,redict > /system,path > /system,hidden > 1,name > 系统管理,children > [[component > user,redict > /user,path > /user,hidden > 1,name > 用户管理,children > [[c…

倒计时63天

e/f/j e:,,,一道e题卡我2个多h,幸好之后去写i题了,不然就完了╥﹏╥... E-Tokitsukaze and Eliminate (easy)_2024牛客寒假算法基础集训营2 (nowcoder.com) 我的思路:倒过来看不同个数再考虑一下1212这样…

UML---用例图,类图

用例图 用例图(Use Case Diagram)主要描述系统的功能需求和参与者与系统之间的交互。它是用户与系统交互的最简表示形式,展现了用户和与他相关的用例之间的关系。用例图被视为系统的蓝图,通过它,人们可以获知系统不同种…

mysql:事务的特性ACID、并发事务(脏读、不可重复读、幻读、如何解决、隔离级别)、undo log和redo log的区别、相关面试题和答案

事务是一组操作的集合,它会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 事务的特性(ACID) 原子性(Atomicity):事务是不可分割的…

Flink-1.18.1环境搭建

下载 下载flink安装包 Index of /dist/flink/flink-1.18.1 下载flink-cdc安装包 Release Release 3.0.0 ververica/flink-cdc-connectors GitHub 安装 添加环境变量 vi ~/.bash_profile export FLINK_HOME=/home/postgres/flink/flink-1.18.1 export PATH=$PATH:$FL…

idea开发工具的简单使用与常见问题

1、配置git 选择左上角目录file->setting 打开,Version Control 目录下Git,选择git安装目录下的git.exe文件; 点击test,出现git版本,则表示git识别成功,点击右下角确认即可生效。 2、配置node.js 选…

ubuntu开机报错/dev/nume0n1p2:clean

本来是开机卡在这个界面,经过以下操作,变成这种了 现在的问题变成linux卡在 failed to start NVIDIA Persistence Daemon 按照下面的操作方法,可以有开机界面了。但是输入密码后,一直在登录界面 1.方式一:重新安装显…

Prometheus主机相关指标表达式整理

问题描述 需要通过Prometheus采集监控的主机节点的cpu使用率、内存使用率、磁盘使用率等指标数据,并根据topk排序筛选出前topN的主机。对过程进行一下记录。 表达式 //磁盘读速率top10private final static String TOP10_DISK_READ "topk(10,sum(irate(node…

.gitlab-ci.yml文件参数

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

TypeScript 学习笔记(Day4)

「写在前面」 本文为 b 站黑马程序员 TypeScript 教程的学习笔记。本着自己学习、分享他人的态度,分享学习笔记,希望能对大家有所帮助。推荐先按顺序阅读往期内容: 1. TypeScript 学习笔记(Day1) 2. TypeScript 学习笔…

【计算机网络】Socket的SO_TIMEOUT与连接超时时间

SO_TIMEOUT选项是Socket的一个选项,用于设置读取数据的超时时间。它指定了在读取数据时等待的最长时间,如果在指定的时间内没有数据可读取,将抛出SocketTimeoutException异常。 SO_TIMEOUT的设置 默认情况下,SO_TIMEOUT选项的值…

SystemVerilog约束随机(二)

文章目录 前言一、SystemVerilog约束随机1.1 集合操作set membership1.2 权重约束weighted constraints1.3 队列约束array constranint1.4 条件约束order constraints1.5 等价约束equivalence constraints1.6 顺序约束solver order 总结 前言 这里主要记录一下systemverilog中…

【Rust】——rust前言与安装rust

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…

ACM训练题:Division

题意是给你N&#xff0c;打印出所有相除等于N的五位数&#xff08;包含前导零&#xff09;&#xff0c;可以枚举后五位&#xff0c;计算量是10&#xff01;/5&#xff01;&#xff0c;然后乘N&#xff0c;一起检验10个数是否都出现。 AC代码&#xff1a; #include <iostre…

蓝桥杯省赛无忧 课件111 带权并查集

01 什么是带权并查集&#xff1f; 02 算法原理 03 经典例题分析