- 定义
数据库是高效的存储和处理数据的介质- 介质:磁盘和内存
- 数据库分类:根据存储介质不同
- 关系型数据库SQL
- 非关系型(NoSQLNot Only SQL)
- 数据库分类
- 大型:Oracle,DB2
- 中型:Mysql
- 关系型数据库
- 安全,保存到磁盘,容易理解,比较浪费空间,二维表的形式存在
- 非关系型:memcached,mongodb,redis
- 高效,但是不安全,断电消失
关系型数据库
建立在关系模型上的数据库
- 关系模型
- 数据结构 :二维表
- 操作指令集合 :SQL
- 完整性约束
- 表内数据约束(字段-字段)
- 表与表之间约束(表-表,外键)
SQL
structured query language结构化查询语言,数据以查询为主,99%
SQL分三类:
- DDL数据定义语言,用来维护存储数据的结构(表,数据库)。比如
create,drop,alter - DML 数据操作语言,操作数据,也就是DDL创建的表中的内容。
比如update,del,insert。其中DML中耽误分一类DQL,查询语言,select - DCL数据控制语言 ,负责权限管理。比如grant,revoke等
![](https://img.haomeiwen.com/i5573343/67d408e4db543b45.png)
SQL基本操作
- 根据SQL操作对象,分三类:数据库操作,数据表,字段操作,数据操作
- 库选项:CRUD数据库
1 新增数据库
- 库选项:CRUD数据库
create database 数据库名字 [库选项]
数据库名字建议不用中文,因为在数据库的data目录下有已经存在的数据文件夹。名字如果是中文不会正常显示。每个数据库对应文件夹中有.opt文件,保存着该数据库的字符集和校对集信息
![](https://img.haomeiwen.com/i5573343/a59ce066ffc73631.png)
![](https://img.haomeiwen.com/i5573343/91ed6481746999ca.png)
![](https://img.haomeiwen.com/i5573343/f2adfba1763dfca2.png)
- 数据库名字不能用关键字
如果使用,需要用esc下面的`(反引号)引起来
create database `database` charset utf8
- 库选项,用来约束数据库
- 字符集charset/character set gbk/utf8
- 校对集collate 具体校对集
校对集的ci是不区分大小写
2 查看数据库
- 查询所有
show databases
- 模糊查询
show databases like 'information%'
- 查看数据库创建语句
show create database mybase
3 更新数据库
名字不可以修改,数据库的修改,仅限库选项
![](https://img.haomeiwen.com/i5573343/c0e05696ad71d317.png)
4 删除数据库
drop database mybase;
- 数据表操作
- rename数据表
rename table a to b;
网友评论