1. 数据库作用
Java程序在运行的过程中对于数据进行存储操作,变量,对象,数组,集合,双边队列…数据是保存到内存中,数据存储是瞬时的,程序退出,电脑异常。都会导致数据丢失并且不可逆。
文件存储数据,XML,JSON,其他文件。可操作性比较差,API繁琐,不同的文件有不同的解析方式,而且在内存占用和效率问题上很难达到两全程度。
存在的一些问题:
1. 文件保存的数据没有数据类型区分,都是字符串。
2. 数据存储量是较小的,有一定限制的。
3. 没有安全限制。
4. 文件操作没有备份,回滚,数据保护机制
2. 什么是数据库
数据库按照特定的数据结构,来进行数据的组织,存储,管理和查询,数据库软件。可以长期存储,有安全限制,数据恢复,并且数据存储可拓展
数据库分类:
网状结构数据库
层次结构数据库
关系结构数据库【重点】
Oracle,MySQL,DB2,SQL Server
通过表结构方式来进行数据的存储操作。--> XLS表格
非关系型数据库
MongDB Redis
使用哈希表结构方式,Key-Value数据存储方式
ES
ElastecSearch
3.数据库管理系统
数据库管理系统
DBMS
DataBase Management System
操作和管理数据大型软件,用于管理,建立,使用和查询数据。
分类:
Oracle
贼牛皮,安全性,稳定性,数据存储复杂程度....可以完全符合工业要求
贵
DB2
IBM公司,不是很多见
SQL Server
MS公司推出的关系型数据库
SQLite
轻量级数据库,源码1W行C语言,手机通讯录
4.MySQL
4.1 MySQL了解
MySQL数据库默认编码集 Latin1 ==> 西欧
瑞典的一个公司开发的!! MySQL AB公司
MySQL支持插件!!!
社区
InnoDB跨时代的存储引擎
MySQL性能是非常不错的!!!
美国小鹰号航空母舰数据存储都是使用MySQL
MySQL 隶属于Oracle公司,免费提供使用的数据库软件。目前流行的版本是 MySQL 5.5 5.6 5.7,最新版本是8.0
实际开发中我们要考虑稳定性,兼容性,普适性
4.2 下载
MySQL5.7的下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
5. SQL
5.1 SQL语句
SQL是数据库通用查询数据,不管是MySQL,Oracle,SQL Server都是支持标准SQL语句。不同数据库都会有自己特定的一些SQL语言。
SQL简单分类
C Create
R Read
U Update
D Delete
5.2 MySQL基本操作
cmd > mysql -hlocalhost -uroot -p123456
# mysql指目前需要操作连接的数据库
# -hlocalhost -h host端口,当前数据库所处的服务器ip地址,域名或者主机名
# localhost 表示本地,如果是本地连接可以省略
# -uroot -u user用户 root表示用户
# -p -password 密码
# 推荐方式
cmd > mysql -uroot -p
Enter password: ******
-- 展示当前数据库中所有的数据表
mysql > show databases;
-- 创建数据库
-- CREATE DATABASE DBName;
mysql > create database nzgp2001;
-- 创建数据库过程修改编码集
mysql > create database nzgp2002 character set latin1;
mysql > create database nzgp2003 character set gbk;
-- 查看创建数据库的详细内容
mysql > show create database nzgp2001;
-- 修改数据库的编码集
mysql > alter database nzgp2002 character set gbk;
-- 删除对应数据库
mysql > drop database nzgp2002;
-- 选择使用数据库
mysql > use nzgp2001;
-- 让MySQL告知当前使用的数据库是哪一个
# 让MySQL告知当前使用的数据库是哪一个
mysql > select database();
6. MySQl开发工具使用
Navivcat for MySQL 非常不错
SQLyog 小海豚
MySQL WorkBench 免费,MySQL官网提供
IDEA Java IDE提供了数据库操作支持
7. 查询语句【重点】DQL
7.1 基本格式
select 查询内容 from 从哪里查