# 数据库分类 **关系型数据库**:(SQL) - MySQL、Oracle、Sql server、DB2、SQLite - 通过表和表之间、行和行之间的关系进行数据的存储。 **非关系型数据库**:(NoSQL)Not only - Redis、MongoDB - 通过对对象的存储进行数据的存储 # DBMS 数据库管理系统 - 数据库的管理软件,科学有效的管理数据、维护和获取数据。 - MySQL,数据库管理系统。 # 安装Mysql 建议安装.zip,不要安装二进制安装包。 # 基本命令 ```sql #连接数据库 mysql -uroot -p123456 #-u后接用户名, -p后接密码 -- 所有语句都是用;结尾 -- 单行注释 /* 多行注释 */ show databases; -- 查看所有的数据库 use school; -- 切换使用的数据库 show tables; -- 查看数据库中所有的表 describe student; -- 显示数据库摸一个表中所有的信息 create database family; -- 创建一个数据库 exit -- 退出 DDL 数据库定义语言 DML 数据库操作语言 DQL 数据库查询语言 DCL 数据库控制语言 ############# CRUD, API ``` 操作数据库 > 操作数据库表 > 操作数据库表数据 ## 操作数据库 创建数据库 ```sql create database westos; create database if not exists westos; ``` 删除数据库 ```sql drop database westos; drop database if exists westos; ``` 使用数据库 ```sql use westos; use school; use `westos`; -- 数据库名称为关键字 select `user` form school; show databases; -- 查看所有数据库 ``` ## 数据库的数据类型 > 数值 - tinyint 小数据 1byte - smallint 小数据 2byte - mediumint 中 3byte - int 正常 4byte - bigint 大 8byte - float 浮点数 4byte - double 双精度 8byte - decimal 字符串形式浮点数 金融 > 字符串 - char 字符串 0~255 - varchar 可变字符串 0~65535 String - tinytext 微型文本 2^8 - 1 - text 文本串 保存大文本 2^16 - 1 > 时间和日期 java.util.Date - date YYYY-MM-DD 日期格式 - time HH:mm:ss 时间格式 - datetime YYYY-MM-DD HH:mm:ss 常用时间 - timestamp 时间戳 1970-01-01~ - year 年份 > null 没有值,不要使用null进行运算。 ## 数据库的字段属性