存储数据,管理数据的仓库
常见的数据库分为 关系型数据库:Oracle、MySQL、SQLServer、Access
非关系型数据库: MongoDB、Redis、Solr、ElasticSearch、Hive、HBase
关系型和非关系型
曾经数据库的使用建立在关系型数据库之上,大厂都主要使用关系型数据库Oracle 现如今是关系型数据库和非关系型数据库相补相成
关系型数据库 只要是 是行和列的形式存储数据,以便于存储数据,便于用户理解,关系数据库这一系列行和列被称为表,一组表组成了数据库
Mysql数据库
1.mysql服务端,用来处理数据维护,保护磁盘
2.mysql,CRUD新增,修改,删除,
结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ “S-Q-L”),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
SQL 是1986年10 月由美国国家标准局(ANSI)通过的数据库语言美国标准,接着,国际标准化组织(ISO)颁布了SQL正式国际标准
DML(Data Manipulation Language)数据操纵语言
如:insert,delete,update,select(插入、删除、修改、检索)简称CRUD操新增Create、查询Retrieve、修改Update、删除Delete
DDL(Data Definition Language)数据库定义语言
如:create table之类
DCL(Data Control Language)数据库控制语言
如:grant、deny、revoke等,只有管理员才有相应的权限
DQL(Data Query Language)数据库查询语言
如: select 语法
注意:SQI不区分大小写
数据库常用操作
建库
create databases 库名 ;
crate databases default character set utf8; //防止中文乱码
查询库
show databases;
删库
drop database 库名;
表的常规操作
使用数据库
use 数据库名 ;
创建表
create table 表名( 字段名称 字段类型(字段长度),字段名称2 字段类型2(字段长度);
查询表
show tables;
描述表的结构
desc 表名 ; 描述表的结构
修改表
alter table 表名 add column 字段名称 字段类型(长度)
删除表
drop table 表明;
表记录的常用操作
1 查询
select*from 表名
2新建
insert into 表名 values(字段1设置的值,字段2设置的值,字段3设置的值);
注意:
1 valuse 的值的数量必须和字段的数量匹配
2 类型要和字段的类型匹配
3 varchar类型 必须使用 双引号 或者单引号修饰.
修改
update 表明 set age=555 ;
删除
delete from tb_door ;
日期
date 包含年月日
time时分秒
datetime包含年月日和时分秒
timestamp时间戳,不是日期,而是从1970年1月1日到指定日期的毫秒数
图片
blob 二进制数据,可以存放图片、声音,容量4g。早期有这样的设计。但其缺点非常明显,数据库庞大,备份缓慢,这些内容去备份多份价值不大。同时数据库迁移时过大,迁移时间过久。所以目前主流都不会直接存储这样的数据,而只存储其访问路径,文件则存放在磁盘上
数字
tinyint,int整数类型
float,double小数类型
numeric(5,2) decimal(5,2)—也可以表示小数,表示总共5位,其中可以有两位小数
decimal和numeric表示精确的整数数字
字符
char长度固定,不足使用空格填充,最多容纳2000个字符,char(11)存储abc,占11位。查询速度极快但浪费空间
varchar变长字符串,最多容纳4000个字符,varchar(11)存储abc,只占3位。查询稍慢,但节省空间。Oracle为varchar2
大文本: 大量文字(不推荐使用,尽量使用varchar替代)
————————————————
字段约束
1非空约束 如果一个列添加了非空约束那么这个字段的值就不能为空,但可以重复 格式 create table 表名( 字段名称 字段类型(字段长度),字段名称2 字段类型2(字段长度) not null )
2.唯一约束 如果一个列添加了唯一约束那么这个字段的值就不能重复,但可以为空. 格式 create table 表名( 字段名称 字段类型(字段长度),字段名称2 字段类型2(字段长度) unique);