深入浅出Mysql系列- SQL基础简介

文章目录

  • /***点赞再看,养成习惯***/
  • 一、SQL简介
    • 1.1 什么是SQL
    • 1.2 SQL分类
  • 二、 DDL入门
    • 2.1 数据库相关
      • 2.1.1 创建数据库
      • 2.1.2 查看已有的所有数据库
      • 2.1.3 切换正在使用的数据库
      • 2.1.4 查看当前库下的所有表
      • 2.1.5 删除数据库
    • 2.2 表相关
      • 2.2.1 创建表
      • 2.2.2 查看表定义
      • 2.2.3 查看建表语句
      • 2.2.4 删除表
      • 2.2.5 修改表结构
      • 2.2.6 更改表名称
  • 三、DML入门
    • 3.1 插入数据
    • 3.2 更新表数据
    • 3.3 删除数据
    • 3.4 查询数据
  • 四、DCL入门
    • 4.1 创建用户
    • 4.2 为用户授予操作权限
    • 4.3 撤销用户操作权限
  • 结语

/点赞再看,养成习惯/


一、SQL简介

1.1 什么是SQL

SQL (Structrue Query Language) 翻译过来即是结构化查询语言,是20世纪70年代由IBM公司发明的用来完成与数据库进行交互的工具语言。
上个世纪的80年代,由美国国家标准局(ANSI)完善并制定了一直被沿用到现在的SQL标准。

1.2 SQL分类

我们常见的SQL语言分来有三种,分别是DDL,DML以及DCL

  1. DDL: Data Definition Language即数据定义语言,通常是被用来定义数据段属性,数据库属性及表、列、索引等对象属性所用。常见的关键字有createdropalter
  2. DML:Data Manipulation Language即数据操纵语言,通常被用来操纵数据表中的数据,也就是我们常说的数据的增伤改查(这里也有一些老师会将查询相关语句独立出去称为DQL ),常见的关键字有insertupdatedeleteselect
  3. DCL: Data Control Language即数据控制语言,常用来进行不同数据段的权限控制,其常见关键字有grantrevoke

二、 DDL入门

下面我们简单的讲一下常见的DDL语句的格式及用途。
这里提醒一下SQL的初学者,每一句SQL语句的结尾一定要记得加分号
如果还没有安装数据库的同学,可以参考博主往期文章学习数据库的安装及登录:
阿里云轻量应用服务器配置 - MYSQL的安装

2.1 数据库相关

2.1.1 创建数据库

格式

create database 库名 ;

比如我们创建一个名字叫做test_01的库

create database test_01 ;

效果:
在这里插入图片描述

2.1.2 查看已有的所有数据库

格式:

show databases ;

深入浅出Mysql系列- SQL基础简介_第1张图片
这里我们要稍微延伸一点知识:
当我们安装完MYSQL数据库后,他会为我们创建四个默认库,分别是:

  1. information_schema : 主要用来存储数据库对象信息
  2. performance_schema: mysql5.5引入,主要用来存储系统性能相关数据
  3. sys: 基于information_schema 和performance_schema封装了一些默认视图
  4. mysql:存储系统用户相关的权限信息

2.1.3 切换正在使用的数据库

格式:

use 库名 ;

比如切换到我们刚刚新建的test_01的库

use test_01 ;

效果:
在这里插入图片描述

2.1.4 查看当前库下的所有表

格式:

show tables

在这里插入图片描述

这里说一下,这里由于是新建的库,还没有建表,因此返回结果为empty

2.1.5 删除数据库

谨慎操作!
格式:

drop database 库名;
drop database test_01 ;

深入浅出Mysql系列- SQL基础简介_第2张图片

2.2 表相关

2.2.1 创建表

格式:

create table 表名(
字段名1 字段类型 字段备注,
字段名2 字段类型 字段备注
)

记得选择一个库进行操作!
这里只讲最基础的表创建相关,关于主键约束等在后面会详细的去讲,现在先不需要管。
如我们创建一个学生表(student),包含学生ID(id),学生姓名(name),学生班级ID(class_id)及学生性别(sex)这些字段。

CREATE TABLE `student` (
	`id` INT ( 11 ) NOT NULL AUTO_INCREMENT COMMENT '主键',
	`name` VARCHAR ( 32 ) DEFAULT NULL COMMENT '姓名',
	`class_id` INT ( 255 ) DEFAULT NULL COMMENT '班级id',
	`sex` VARCHAR ( 32 ) DEFAULT NULL COMMENT '性别',
PRIMARY KEY ( `id` ) 
) ;

效果:
深入浅出Mysql系列- SQL基础简介_第3张图片

2.2.2 查看表定义

格式:

desc 表名 ;
desc student ;

深入浅出Mysql系列- SQL基础简介_第4张图片

2.2.3 查看建表语句

格式:

show create table 表名 \g ;
show create table student \g ;

深入浅出Mysql系列- SQL基础简介_第5张图片

2.2.4 删除表

格式:

drop table 表名
drop  table student ;

在这里插入图片描述

2.2.5 修改表结构

格式:

Alter Table 表名 Modify 字段名 定义 ; #修改表结构
Alter Table 表名 Add 字段名 定义 ;#新增表字段
Alter Table 表名 Drop 字段名 定义 ;# 删除表字段
Alter Table 表名 Change 字段名 定义 ;# 为字段改名

这里我们以为student表(刚刚如果删除了的小伙伴记得重新建下表)修改sex字段的默认长度举例:

Alter Table student MODIFY sex VARCHAR(8) ;

2.2.6 更改表名称

格式:

Alter table 表名 rename 新表名 ;
Alter table student rename student_01 ;

效果:
在这里插入图片描述


三、DML入门

3.1 插入数据

格式:

INSERT INTO 表名 (字段1,字段2,字段3values (值1,值2,值3;
INSERT INTO student (`id`, `name`, `class_id`, `sex`) VALUES (1, '张三', 001, '男');


3.2 更新表数据

格式:

UPDATE 表名 SET 字段 =WHERE 条件 ;#一定要注意写条件
UPDATE student SET name = "张四" where id = 1

3.3 删除数据

DELETE FROM 表名 WHERE 条件 ; 
DELETE from student where id = 1 ;

3.4 查询数据

查询语句会在后面的章节详细的讲解,这里先只讲述基本结构

SELECT 字段1,字段2,字段3 ... FROM 表名 WHERE 条件
select * from student;# 这里的*代表全部字段

四、DCL入门

4.1 创建用户

CREATE USER  用户名 IDENTIFIED BY 密码 ;
CREATE USER 'test01' IDENTIFIED BY '#Test1235678' ;

4.2 为用户授予操作权限

Grant 权限类型 on 表名 to 用户 ;
Grant select on student to test01  ;

4.3 撤销用户操作权限

revoke 权限类型 on 表名 to 用户 ;
revoke select on student to test01  ;

结语

今天关于SQL入门的基础知识到这里就结束了,有问题的小伙伴可以在评论区留言或者关注晓龙oba公众号,博主在看到的第一时间就会为您解答!

你可能感兴趣的:(深入浅出Mysql,mysql,sql,数据库)