Mysql数据库(二)

文章目录

  • 前言
  • [一、 数据库的基本操作](#一、 数据库的基本操作)
    • [1.1 查看数据库信息](#1.1 查看数据库信息)
    • [1.2 切换数据库](#1.2 切换数据库)
    • [1.3 创建数据库](#1.3 创建数据库)
    • [1.4 删除数据库](#1.4 删除数据库)
    • [1.5 查看数据库中的表](#1.5 查看数据库中的表)
  • 二、数据库中表的基本操作
    • [2.1 查看表中内容](#2.1 查看表中内容)
    • [2.2 创建表](#2.2 创建表)
      • [2.2.1 字段表头](#2.2.1 字段表头)
      • [2.2.2 字段约束](#2.2.2 字段约束)
    • [2.3 删除表](#2.3 删除表)
    • [2.4 修改表](#2.4 修改表)
      • [2.4.1 修改表名](#2.4.1 修改表名)
      • [2.4.2 增加字段](#2.4.2 增加字段)
      • [2.4.3 删除字段](#2.4.3 删除字段)
    • [2.4.4 修改字段](#2.4.4 修改字段)
    • [2.5 向表中插入数据](#2.5 向表中插入数据)
    • [2.6 查看表中数据](#2.6 查看表中数据)
    • [2.7 更新数据](#2.7 更新数据)
    • [2.8 删除数据](#2.8 删除数据)
    • [2.9 克隆表](#2.9 克隆表)
    • [2.10 创建临时表](#2.10 创建临时表)
  • 三、用户管理
    • [3.1 创建用户](#3.1 创建用户)
    • [3.2 删除用户](#3.2 删除用户)
    • [3.3 修改密码](#3.3 修改密码)
    • [3.4 忘记密码](#3.4 忘记密码)
    • [3.5 用户授权管理](#3.5 用户授权管理)
    • [3.5.1 给用户授权](#3.5.1 给用户授权)
    • [3.5.2 查看权限](#3.5.2 查看权限)
    • [3.5.3 删除权限](#3.5.3 删除权限)
  • 总结

前言

本文将学习数据库的内容编辑,包括库的创建、删除,表的增删改查等。

一、 数据库的基本操作

1.1 查看数据库信息

show databases; ------------------------------查看数据库中所有库

1.2 切换数据库

若想对数据库中的表进行操作,先要切换到对应的数据库。

use 数据库名字 ;------------------------切换数据库

1.3 创建数据库

create database 数据库名字 ;------------------------创建数据库

1.4 删除数据库

drop databases 数据库名字 ;------------------------------------删除数据库

1.5 查看数据库中的表

show tables in 数据库名字 ; ------------------查看某一个数据库中的表

show tables ;------------------------------查看当前数据库中所有表

二、数据库中表的基本操作

2.1 查看表中内容

desc 表名称 ;------------------------查看表中内容

2.2 创建表

create table 表名 ( id int not null AUTO_INCREMENT,

name char(10) not null,

city char(10) not null,

age char(3) not null,

PRIMARY KEY (id)

);

2.2.1 字段表头

Field:字段名称

Type:字段类型

Null:是否允许为空

Key:是否是主键(PRI)、唯一键(UNI)或索引(MUL)

Default:默认值

Extra:额外属性(如 auto_increment)

2.2.2 字段约束

NOT NULL :不能为空

DEFAULT :默认值

PRIMARY KEY :主键

UNIQUE KEY :唯一键

AUTO_INCREMENT :自增长字段(与主键一起使用)

2.3 删除表

drop table 表名 ------------------------------------删除表

2.4 修改表

2.4.1 修改表名

alter table 新表名 rename 就表名 ------------------------修改表名

2.4.2 增加字段

alter table 表名 add number char(10) not null;

2.4.3 删除字段

alter table 表名 drop 字段名;

2.4.4 修改字段

alter table class1023 旧行 新行 新行约束

2.5 向表中插入数据

insert into 表名 (字段1,字段2,字段3...) values(值1,值2,值3...)

2.6 查看表中数据

select * from 表名 ;------------------------------查看表中全部数据

select * from 表名 limit 2; ------------------------显示前两行

select * from 表名 limit 1,2 ;------------------------------查看表中,从第一行之后,显示两行

select * from 表名\G ------------------------竖向显示结果


2.7 更新数据

update 表名 set 字段=要改成的 where 字段=条件

2.8 删除数据

delete from 表名 where 字段=条件

2.9 克隆表

create table 新表名字 like 旧表名字 ---------------------------只克隆表结构,不克隆数据

create table 新表名字 as select * from 旧表名字 ------------------克隆数据,但结构不克隆主键

2.10 创建临时表

临时表不会显示在数据库中,并且不会永久存放。

create temporary table 表名 (id char(2) not null,

name char(10) not null

);

三、用户管理

3.1 创建用户

create user "用户名"@"来源" identified by '密码';

use mysql ------------------------------切换到mysql数据库中(用户数据)

SELECT User, Host, authentication_string FROM user;------------------将所有用户根据这三种制成表格

3.2 删除用户

DROP USER '用户名'@'来源地址' ------------------------删除用户

3.3 修改密码

set password=password('新密码'); -------------------修改当前用户的密码

set password for "用户名"@"来源地址" =password('新密码')------------------------修改用户密码


3.4 忘记密码

1.修改 /etc/my.cnf 添加:

mysqld

skip-grant-tables

2.重启 MySQL 服务并直接登录

3.修改密码:

UPDATE mysql.user SET AUTHENTICATION_STRING=PASSWORD('新密码') WHERE user='root';FLUSH PRIVILEGES;

4.删除 skip-grant-tables 并重启 MySQL

3.5 用户授权管理

3.5.1 给用户授权

(可以看到xjy用户没有mysql数据库权限)

grant 权限命令 on 数据库.表 to "用户名"@"来源地址" identified by "密码"------------------授予权限

(这里授予xjy用户可以在所有数据库的所有表中进行查看数据与添加数据)

(注:授权之后要记得刷新)

3.5.2 查看权限

SHOW GRANTS FOR '用户名'@'来源地址'; ------------------------查看权限

3.5.3 删除权限

REVOKE 权限列表 ON 数据库.表 FROM '用户名'@'来源地址'; ------------------撤销权限

(可以看到权限撤销成功)

总结

本文将学习数据库的内容编辑,包括库的创建、删除,表的增删改查等。希望本文对大家有所帮助,谢谢观看😜

相关推荐
科技小花3 小时前
全球化深水区,数据治理成为企业出海 “核心竞争力”
大数据·数据库·人工智能·数据治理·数据中台·全球化
X56614 小时前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python
johnny2334 小时前
运维管理面板:AcePanel、OpenOcta、DeepSentry
运维
青梅橘子皮4 小时前
Linux---基本指令
linux·运维·服务器
ZC跨境爬虫5 小时前
跟着 MDN 学 HTML day_9:(信件语义标记)
前端·css·笔记·ui·html
前端老石人5 小时前
HTML 字符引用完全指南
开发语言·前端·html
REDcker5 小时前
Linux信号机制详解 POSIX语义与内核要点 sigaction与备用栈实践
linux·运维·php
幼儿园技术家5 小时前
前端如何设计权限系统(RBAC / ABAC)?
前端
虹科网络安全5 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
2301_771717215 小时前
解决mysql报错:1406, Data too long for column
android·数据库·mysql