数据库概念
数据库本质上是一个软件,将数据保存在硬盘,采用数据库能够更有效的管理数据。
数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。
服务器
:
(1)硬件上看,提供远程主机的服务
(2)软件上看,网络上提供服务的软件
与我们之前所学的数据结构
有所不同,数据结构本质上是一门学科,将数据保存在内存中。
内存 VS 硬盘
- 硬盘大,内存小
- 内存的成本高于硬盘
- 内存中的数据,断点丢失
- 内存访问速度更快
数据库学什么?
1 ,设计数据库表结构
2,SOL语句
3,通过Java来操作数据库
数据库分类
关系数据库(RDBMS)
关系数据库:是指采用了关系模型来组织数据的数据库
;
常用的关系型数据库:
基于标准的SQL,只是内部实现有区别
Oracle
: 甲骨文产品,适合大型项目,适用于做复杂的业务逻辑; 但收费!MySQL
: 属于甲骨文,不适合做复杂的业务。开源免费;SQL Server
: 微软的产品,适用于中大型项目,但收费!
非关系数据库
不规定基于SQL实现,现在更多是指
NoSQL
数据库;
常用的非关系型数据库:
- 基于键值对(K-V): 如:
memcached
、redis
- 基于文档型:如
mongodb
- 基于列族:如
hbase
- 基于图型:如
neo4j
关系型数据库与非关系型数据库对比:
数据库语言(SOL)
SQL是一种编程语言,不同的数据库实现起来是不一样的,关系型数据库支持SQL,非关系型数据库是不支持的
;
- 和Java的语法相差比较大
- 有自己的一套标准规范:
关键词
、语法
客户端连接服务器的方式
- 打开客户端工具(程序)
建立在已经安装数据库软件了
!
- 通过第三方的客户端工具:
如
navicat
官方提供了命令行的方式(Command Line Client,MySQL Workbench(GUI可视化)
- 利用插件的方式:
如
:idea可以通过数据库插件(作为数据库客户端)来连接数据库服务器
- cmd作为客户端工具(
需要配置环境变量
)
命令语法:
mysql-u root-p
,,u
指用户,p
指密码;
默认连接的是本机数据库,如果要连接远程数据库,需要指定IP和端口;