数据库
记录信息的一种载体。
优点:(任何优缺点都是相对而言的,这是和文件相比)
- 安全性更高
- 利于数据查询和管理
- 利于存储海量数据
- 在程序中控制不方便
主流数据库
- SQL Sever: 微软的产品,.Net程序员的最爱,中大型项目。
- Oracle: 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。
- MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。
- PostgreSQL :加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。
- SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
- H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。
安装MySQL
安装教程详细介绍链接:https://mp.csdn.net/postedit/90704137
连接到MySQL服务器:
Win 10 中 按 win+R 输入 cmd,进入命令行,输入:mysql -h 127.0.0.1 -P 3306 -u root -p
mysql -u root -p 也是可以的
注意:
如果没有写 -h 127.0.0.1 ,默认是连接本地
如果没有写 -P 3306 ,默认是连接3306端口号
服务器、数据库、表的关系
基础操作: 一定要记得分号结尾!!!
- 创建数据库
create database hehe<库名>
- 使用数据库
use hehe<库名>
- 创建数据库表
create table tt1<表名> ( id int, name varchar(10));
- 表中插入数据
insert into tt1<表名> values(1.'TOM');
多个数据插入:
insert into tt1 vlues(2,'JACK'),(3,'ALICE'),(4,'NANA');
- 查询表中的数据
select * from tt1<表名>;
字符集和校验规则
查看系统默认字符集以及校验规则
show variables like 'character_set_database'; show variables like 'collation_database';
查看数据库支持的字符集
show charset;
注意:当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则是:utf8_ general_ ci
校验规则对数据库的影响
- 不区分大小写
校验规则使用utf8_ general_ ci[不区分大小写]
- 区分大小写
校验规则使用utf8_ bin[区分大小写]
数据库删除
DROP DATABASE [IF EXISTS] db_ name<数据库名>;
查看数据库:
show databases;
显示创建语句:
show create database 数据库名
数据库备份:
mysqldump -P3306 -u root -p -B 数据库名 > 数据库备份存储的文件路径
数据库还原:
source 文件路径;
注意:数据库备份一定要在数据库断开连接的情况下,即Win10的命令行 win + R,输入cmd中实现;还原要在数据库链接的情况下。这个至关重要!!!