1.数据库总览
关系型数据库(SQL)
MySQL , Orcle , SQL Server,SOlite,DB2
非关系型数据库(NOSQL)
Redis,MongoDB
2.什么是DBMS
即数据库管理系统(Database Management System)
数据管理软件,科学组织和储存数据,高效的获取和维护数据
3.结构化查询语句SQL
| 名称 | 解释 | 命令 |
|---|---|---|
| DDL | 定义和管理数据对象,如数据库,数据表等 | CREATE,DROP,ALTER |
| DML | 用于操作数据库对象中所包含的数据 | INSERT,UPDATE,DELETE |
| DQL | 用于查询数据库数据 | SELECT |
| DCL | 用于管理数据库的语言,包括管理权限及数据更改 | GRANT,COMMIT,ROLLBACK |
对库的操作:
查看数据库:show databases;
创建数据库:create database lol;
删除数据库:drop database lol;
切换到某个数据库: use MySchool;
对表的操作:
查看表: select * from 表名;
查看表结构:describe/desc 表名;
查看建表语句:show create table subject;
删除表:drop table if exists grade;
创建表:create table grade(GradeID int(4) primary key,GradeName varchar(10)
);
4.列类型分类
4.1数值类型
| 类型 | 说明 | 取值范围 | 储存需求 |
|---|---|---|---|
| tinyint | 非常小的数据 | 有符值:-2^7~2 ^7-1 无符值:0~2^8-1 | 1字节 |
| int | 标准整数 | 有符值:-2^31~2 ^31-1 无符值:0~2^832-1 | 4字节 |
| double | 双精度浮点数 | ±2.2250738585072014e-308 | 8字节 |
| decimal | 字符串形式的浮点数 | decimal(m,d) | m个字节 |
4.2字符串类型
| 类型 | 说明 | 最大长度 |
|---|---|---|
| char[(M)] | 固定长字符串,检索快但费空间,0<=M<=255 | M字符 |
| varchar[(M)] | 可变字符串 0<=M<=65535 | 变长度 |
| text | 文本串 | 2^16-1字节 |
4.3日期和时间型数值类型
| 类型 | 说明 |
|---|---|
| DATE | YYYY-MM-DD,日期格式 |
| TIME | Hh:mm:ss,时间格式 |
| DATETIME | YY-MM-DD hh:mm:ss |
| TIMESTAMP | YYYYMMDDhhmmss格式表示的时间戳 |
| YEAR | YYYY格式的年份 |
5.属性
1.UNSIGNED
无符号的
声明该数据列不允许负数
2.ZEROFILL
0填充的
不足位数的用0来填充,如 int(3),5则为 005
3.AUTO_INCREMENT
自动增长的,每添加一条数据,自动在上一个记录数上加1
通常用于设置主键,且为整数类型
可定义起始值和步长
4.NULL 和 NOT NULL
默认为NULL,即没有插入该列的数值
如果设置为NOT NULL,则该列必须有值
5.DEFAULT
默认的
用于设置默认值
例如,性别字段,默认为“男”,否则为“女”;若无指定该列的值,则默认为“男”的值
6.PRIMARY KEY
设置为主键,最多有一个,非空