day07数据库开发-MySQL 7.27
1.数据库:DataBase,简称DB,它是存储和管理数据的仓库
2.数据库管理系统:DataBase Management System,简称DBMS,它是操作和管理数据库的大型软件
3.SQL:Structured Query Language,简称SQL。它是操作关系型数据库的编程语言,定义了一套操作关系型数据库的统一标准。
4.关系型数据库(RDBMS),建立在关系模型基础上,由多张相互连接的二维表组成的数据库
5.SQL通用语法:
SQL语句可以单行或多行书写,以分号结尾 |
SQL语句可以使用空格/缩进来增强语句的可读性 |
SQL语句可以使用空格/缩进来增强语句的可读性 |
注释:单行注释:-- 注释内容 或 # 注释内容 多行注释:/* 注释内容 */ |
- SQL分类
DDL | Data Definition Language | 数据定义语言,用来定义数据库对象(数据库,表,字段) |
DML | Data Manipulation Language | 数据操作语言,用来对数据库表中的数据进行增删改 |
DQL | Data Query Language | 数据查询语言,用来查询数据库中表的记录 |
DCL | Data Control Language | 数据控制语言,用来创建数据库用户、控制数据库的访问权限 |
- 项目开发流程,1)项目开发流程,2)项目开发流程,3)数据库优化阶段
8.数据库操作(命令栏中)
show databases ; | 查询所有数据库 | |
select database() ; | 查询当前数据库 | |
create database [ if not exists ] 数据库名; | 创建数据库 | |
数据库名称不能相同,否则报错,通过if not exists来判断是否重名,不重,则创建,重,则不创建。 | ||
use 数据库名 ; | 切换数据库 | |
drop database [ if exists ] 数据库名 ; | 删除数据库 | |
上述语法中database,可以替换成schema | ||
show tables; | 查询当前数据库所有表 | |
desc 表名 | 查看指定表结构 | |
show create table 表名 ; | 查询指定表的建表语句 |
9.在SQL中表格语法:
create table 表名( 字段1 字段1类型 [约束] [comment 字段1注释 ], 字段2 字段2类型 [约束] [comment 字段2注释 ], ...... 字段n 字段n类型 [约束] [comment 字段n注释 ] ) [ comment 表注释 ] ; |
10约束分类
主键自增 auto_increment |
- 数据类型:数值类型、字符串类型、日期时间类型,具体:day07数据库开发-MySQL (yuque.com)
- 修改:1)添加字段
alter table 表名 add 字段名 类型 (长度) [ comment 注释 ] [ 约束 ]; |
2)修改数据类型
alter table 表名 modify 字段名 新数据类型 (长度); |
3)修改字段名和字段类型
alter table 表名 change 旧字段名 新字段名 类型 (长度) [ comment 注释 ] [ 约束 ]; |
4)删除字段
alter table 表名 drop 字段名; |
5)修改表名
rename table 表名 to 新表名; |
- 删除
- 删除表
drop table [ if exists ] 表名; |
2)删除指定表,并重新创建表,(数据会清空)
truncate table 表名; |
13增加(insert)
1). 给指定字段添加数据
insert into 表名 (字段名1, 字段名2, ...) values (值1, 值2, ...); |
插入数据完成之后,查询数据库的数据:
select * from 表名; |
2). 给全部字段添加数据
INSERT INTO 表名 VALUES (值1, 值2, ...); |
3). 批量添加数据
insert into 表名 (字段名1, 字段名2, ...) values (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...) ; |
insert into 表名 values (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...) ; |
注意事项:
插入数据时,指定的字段顺序需要与值的顺序是一一对应的。 字符串和日期型数据应该包含在引号中。 插入的数据大小,应该在字段的规定范围内。 |
14.修改(update)
update 表名 set 字段名1 = 值1 , 字段名2 = 值2 , .... [ where 条件 ] ; |
注意事项:1.条件可有可没有,若没有,则会修改整张表的所有数据。 2.在修改数据时,一般需要同时修改公共字段update_time,将其修改为当前操作时间。 |
15.删除(delete)
delete from 表名 [ where 条件 ] ; |
注意事项: 1.条件可有可没有,若没有则会删除整张表的所有数据。 2.不能删除某一个字段的值(可使用UPDATE,将该字段值置为NULL)。 3.当确认进行删除全部数据操作时,datagrip会提示我们,询问是否确认删除,我们直接点击Execute即可。 |