本系列为笔者学习JavaWeb的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖Spring+MyBatis+SpringMVC+SpringBoot等)》,章节分布参考视频教程,为同样学习JavaWeb系列课程的同学们提供参考。
01 企业开发
02 数据模型
关系型数据库(RDBMS)
是建立在关系模型基础上,由多张相互连接的二维表(行+列)组成的数据库,其格式统一,使用SQL
语言操作。
03 SQL 简介
SQL
是一门操作关系型数据库的编程语言,其定义操作所有关系型数据库的统一标准。
SQL
可单行/多行,可使用空格/缩进,以分号结尾,不区分大小写 ,注释为--
或#
。
SQL
语句通常被分为四大类:
04 DDL 基础操作
DDL
为Data Defination Language
,即数据定义语言,定义数据库对象和表格。
查询:
创建:
删除:
使用:
05 DataGrip
DataGrip
是JetBrains
旗下的一款数据库管理工具,是管理和开发MySQL、Oracle、PostgreSQL
的理想解决方案。
06 DDL 表操作
创建:
create table MingJiao(
id int comment 'ID 唯一标识',
username varchar(20) comment '用户名',
name varchar(10) comment '姓名',
age int comment '年龄',
gender char(1) comment '性别'
) comment '用户表';
约束:约束是作用于表中字段上的规则,用于限制存储在表中的数据,以保证数据库中数据的正确性,有效性和完整性。
create table MingJiao(
id int primary key comment 'ID 唯一标识',
username varchar(20) not null unique comment '用户名',
name varchar(10) not null comment '姓名',
age int comment '年龄',
gender char(1) default '男' comment '性别'
) comment '用户表';
数据类型:数值类型、字符串类型、日期事件类型
类型 | 大小(byte) | 备注 |
---|---|---|
tinyint | 1 | |
smallint | 2 | |
mediumint | 3 | |
int | 4 | |
bigint | 8 | |
float | 4 | float(5,2):5表示整个数字长度,2 表示小数位个数 |
double | 8 | double(5,2):5表示整个数字长度,2 表示小数位个数 |
decimal | decimal(5,2):5表示整个数字长度,2 表示小数位个数 |
类型 | 大小 | 描述 |
---|---|---|
char | 0-255 bytes | 定长字符串 |
varchar | 0-65535 bytes | 变长字符串 |
tinyblob | 0-255 bytes | 不超过255个字符的二进制数据 |
tinytext | 0-255 bytes | 短文本字符串 |
blob | 0-65 535 bytes | 二进制形式的长文本数据 |
text | 0-65 535 bytes | 长文本数据 |
mediumblob | 0-16 777 215 bytes | 二进制形式的中等长度文本数据 |
mediumtext | 0-16 777 215 bytes | 中等长度文本数据 |
longblob | 0-4 294 967 295 bytes | 二进制形式的极大文本数据 |
longtext | 0-4 294 967 295 bytes | 极大文本数据 |
char(10)
: 最多只能存10个字符,不足10个字符,占用10个字符空间。
varchar(10)
: 最多只能存10个字符,不足10个字符, 按照实际长度存储。
date | 3 | 格式 | 描述 |
---|---|---|---|
time | 3 | YYYY-MM-DD | 日期值 |
year | 1 | HH:MM:SS | 时间值或持续时间 |
datetime | 8 | YYYY | 年份值 |
timestamp | 4 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 |
案例:根据页面原型/需求创建表(数据类型、长度、约束)
查询:
修改:
删除: