学SQL第一天

一,SQL指结构化查询语言,全称是Structured Query Language。

SQL可以访问和处理数据库,包括数据查询,插入,更新和删除。

SQL可以创建新数据库,新的表和创建存储过程。

sql语句分为四类 DDL数据定义语言 DML数据操作语言 DQL数据查询语言 DCL数据控制语言

二,

DDL

DDL是数据定义语言,主要是对数据库和数据表的操作

++数据库相关++

创建库

create database 库名;//database:数据库

创建库时判断库是否存在,不存在则创建

create database if not exists 库名;

查看所有数据库

show databases;

使用指定数据库

use 库名;

查看当前指定数据库包含的数据表

show tables;

查看数据库的结构定义信息

show create database 库名;

删除数据库

drop database 库名;

修改数据库的字符集为utf8

alter database 库名 character set utf8;

++数据表相关++

创建表

create table 表名(

字段1 类型1,

字段2 类型2,

字段3 类型3,

...........

);

查看表结构

desc 表名;//desc:说明,概述,描述

查看创建表

show create table 表名;

修改表名

alter table 表名 rename to 新的表名;//rename:重命名

添加一个新的字段

alter table 表名 add 字段; 字段类型;

修改字段名

alter table 表名 rename column 字段名 to 新的字段名;//在数据库中,"column"表示表中的一列。

修改字段类型(注意类型修改前后数据是否兼容)

alter table 表名 modify column 字段名 新的字段类型;//modify:修改,更改,修饰

删除一个字段

alter table 表名 drop 字段名;

删除表

drop table 表名;

删除表时判断表是否存在,若存在则删除

drop table if exists 表名;

三,

DML

DML是数据操作语言,主要是对数据表的操作

数据表插入数据分为全字段插入数据和部分字段插入数据

①全字段插入数据

有多少个字段,就要写多少个值,且是一一对应的

insert into 表名 values(值1,值2,值3...值n);

②部分字段插入数据

部分字段插入数据,只写需要插入数据的字段名

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

(2)删除数据//delete:删除 truncate:删除

在数据库操作中,"truncate table"是一种用于快速删除表中所有数据的语句。与"delete from table"不同,"truncate"操作通常更快,因为它不记录删除的每一行数据,而是直接释放表所占用的存储空间,并且重置表的计数器等属性。但需要注意的是,"truncate"操作是不可恢复的,一旦执行,表中的数据将被永久删除。

删除表中所有数据

delete from 表名;

truncate table 表名;

删除表中指定的数据

delete from 表名 where 字段 = 值;//"where"是 SQL 查询语句中的关键字,用于指定筛选条件。 "字段"代表数据库表中的一列,可以是各种数据类型,如整数、字符串、日期等。"="是比较运算符,表示相等关系。 "值"是要与指定字段进行比较的值,可以是常量、变量或表达式。

(3)修改数据(update)// 在数据库操作中,"update"语句用于修改表中的数据。

无限制条件的修改,会修改整张表

update 表名 set 字段 = 值;

有限制条件的修改,只修改特定记录

(其中 where 字段 = 值 就是条件)

update 表名 set 字段 = 值 where 字段 = 值;

四,(DQL太多了,在最后,咱先DCL哈)

DCL

(1)管理用户

①添加用户

create user '用户名'@'主机名' identified by '密码';

②删除用户

drop user '用户名'@'主机名';

(2)权限管理

①查询权限(grants:授予,同意)

show grants for '用户名'@'主机名';

②授予权限

grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';

③撤销权限

revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';

相关推荐
希和202714 分钟前
江科大 51 单片机课程笔记:DS1302 实时时钟 + LCD1602 可调电子钟(小白逐行讲解)
笔记·单片机·嵌入式硬件
岑梓铭1 小时前
《考研408数据结构》第七章(B树 和 B+树)复习笔记
数据结构·笔记·b树·考研·408
乌暮2 小时前
Spring AOP 与 Spring 事务:用大白话彻底理解原理与实践
java·数据库·spring boot·后端·sql·学习·spring
Go Work6 小时前
docker 占满根分区时先分清谁在吃盘
经验分享·笔记
3095566667 小时前
股票接口返回 404 与空数组的排查笔记:证书状态与级别参数
java·笔记·python·ios·iphone·股票数据api·股票数据接口
蒸蒸yyyyzwd7 小时前
从邓明学习的后端笔记
笔记·学习
岑梓铭7 小时前
《考研408数据结构》第八章(排序)复习笔记
数据结构·笔记
AllData公司负责人16 小时前
AI大模型数据开发底座系列说明书,AllData集成Chat2DB开源项目建设AI 数据库分析底座,涵盖AI 洞察/对话SQL/智能视图!
数据库·人工智能·sql·开源·ai 洞察·对话sql
Rabitebla19 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
Decay__21 小时前
SQLServer 索引与 SQL 优化 —— 聚集索引、非聚集索引、覆盖索引、碎片维护与执行计划
运维·数据库·sql·mysql·架构