关系型数据库:安全(保存在磁盘基本不会丢失),容易理解和掌握,比较浪费磁盘空间
非关系型数据库:不安全(断电数据会丢失),效率高(运行在内存上比磁盘效率要高)
2. SQL语句分为三个部分:
DDL: Data Definition Language, 数据定义语言,用来维护存储数据的结构(数据库,表),代表指 令:create, drop, alter等。
DML:Data Manipulation Language, 数据操作语言,用来对数据的操作(数据表中内容),代表指令:insert, delete, update等:其中DML内部又单独进行了一个分类:DQL(Data Query Language:数据查询语言,例如 select)
DCL:Data Control Language, 数据控制语言,主要是复制权限管理(用户),代表指令:grant, revoke等。
3.Mysql服务端和客户端的交互过程
Mysql是一个c/s架构的软件,有服务端和客户端,服务端一般在机房长期运行,客户端在需要使用的时候才启动,想要访问服务器必须要在客户端进行连接和授权认证过程。具体服务端和客户端的交互过程如下。
1.客户端连接服务端并认证
mysql.exe -hlocalhost -P3306 -uroot -p
服务器的默认端口是3306.
这里如果想要实现下面图的cmd输入命令,需要提前把mysql安装位置添加到系统path这个环境变量。
2.客户端发送SQL指令 show databases;
3.服务端接收指SQL指令,处理指令,发送结果
4.客户端接收结果,显示结果
5.断开连接,释放资源(服务器并发限制)
在cmd窗口退出数据库连接有三种方法,命令分别是 eixt, quit, \q
交互的方式除了在cmd里输入操作指令,我们还可以在mysql提供的Workbench这个工具,或者网络上其他的好用客户端,例如SQLyogEnt.exe,图标是一个小海豚。
4.Mysql数据库数据对象分为四层:
系统(DBMS)-> 数据库(DB)-> 数据表(Table)-> 字段(Field)
四个的管理和包含关系,可以用下图来表示
图解:
外围表示操作系统,一般指电脑,操作系统根据端口号3306可以找到mysql这个软件,也就是操作系统可以管理Mysql程序。我们知道在Mysql中,DBMS是用来管理不同的DB,不同DB中有很多个不同的Table,Table中有不同Field。
5. SQL基本操作CRUD
将SQL的基本操作根据对象分三类:库操作,表操作(字段),数据操作。
库操作
对数据库的增删改查 create, drop, alter, show databases;
新增数据库
基本语法:Create database 数据库名字 [库选项];
库选项:用来约束数据库,主要有两项:
字符集设定:charset/characterset 具体字符集(数据存储的编码格式)
校对集设定:collate具体校对集(数据比较的规则)
常见的字符集有: GBK 和 UTF8
具体命令操作:
在输入上面创建数据库命令之前,你需要先连接上数据库,不会请看前面一篇文章。
查看数据库
1. 查询全部数据库
基本语法:show databases;
命令操作:
注意:上面提到了sql语句中当行注释的写法,--后面要跟空格,也可以用#号来注释。
2. 查询部分数据库,模糊查询
基本语法:show databases like ‘pattern’; --pattern是匹配模式
%: 表示匹配多个
_: 表示匹配单个
命令操作:
这里注意下:如果数据库名称有下划线,例如mydatabase_test,要查询以mydatabase_开头的命令就要这样去写:show databases like ‘mydatabase\_%’, 在下划线前面加上反斜杠表示转译,如果不加就当做查找单个匹配去执行。
更新数据库
数据库名称是不可以修改的,数据库的修改操作只限于对字符集和校对集的修改,而校对集依赖字符集。
语法格式:alter database 数据库名称[选项]
选项有:charset=UTF8(等号可以写也可以是空格);collate 校对集名称
命令举例:
这里把mydatabse这个数据库的字符集改成了GBK,一般来说,数据库创建好了之后,建议不要去修改这些信息的,所以,在创建数据库的时候就要考虑好这些设置。
删除数据库
删除操作是做简单的,不管是删除数据库还是表。语法结构:drop database 数据库名称;
命令举例:
注意:在执行删除数据库命令之前,一般需要备份,一旦删除了,就全部没有,包括数据库里的表数据,这个操作要慎重。
数据库的增删改查命令相对很简单,创建和查看全部数据命令经常用,更新和删除数据库操作还是使用场景比较少见,建议记住库的四个增删改查4个语句语法。