什么是关系型数据库?
数据库就是用来存储数据的仓库,是一种特殊的文件。 根据存储的数据不同,划分为关系型数据库和非关系型数据库。
关系型数据库就是指 建立在关系模型基础上的数据库,通俗来讲这种数据库就是由多张表组成,并且这些表之间存在一定的关系。
关系型数据库的核心元素:
记录: 数据行
字段 : 数据列
数据表 : 数据行的集合
数据库 : 数据表的集合
主键 : 特殊的字段, 用来唯一标识记录的唯一性。
了解关系数据库,就需要了解到 RDBMS , 即关系型数据库管理系统。
所谓的关系型数据库管理系统RDBMS,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。好比excel、wps软件系统 可以管理类似xxx.xls 电子表格文件 。
关系型数据库RDBMS的主要产品:
oracle:在以前的大型项目中使用,银行,电信等项目
mysql:web时代使用最广泛的关系型数据库
ms sql server:在微软的项目中使用
sqlite:轻量级数据库,主要应用在移动平台
RDBMS 与数据库的关系:
关系型数据库由多张表组成
通过RDBMS来管理数据库
RDBMS分为客户端和服务端
客户端通过SQL语句命令实现对数据的管理
SQL :Structured Query Language
SQL是结构化查询语言,是一种用来操作RDBMS的数据库语言,当前关系型数据库都支持使用SQL语言进行操作
,也就是说可以通过 SQL 操作 oracle,sql server,mysql,sqlite 等等所有的关系型的数据库.
SQL语句主要分为:
DQL:数据查询语言,用于对数据进行查询,如select
DML:数据操作语言,对数据进行增加、修改、删除,如insert、udpate、delete
TPL:事务处理语言,对事务进行处理,包括begin transaction、commit、rollback
DCL:数据控制语言,进行授权与权限回收,如grant、revoke
DDL:数据定义语言,进行数据库、表的管理等,如create、drop
CCL:指针控制语言,通过控制指针完成表的操作,如declare cursor
注意点 : SQL语句本身不区分大小写 。
Mysql 特点 :
MySQL对跨平台支持性好,提供了多种主流语言调用的API
MySQL 市场占有率高,且开源,免费,是中小型项目首选的关系型数据库系统
使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
支持多种操作系统,如Linux、Windows、AIX、FreeBSD、HP-UX、MacOS等等。
为多种编程语言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等。
支持多线程,充分利用CPU资源。
优化的SQL查询算法,有效地提高查询速度。
提供多语言支持,常见的编码如GB2312、BIG5、UTF8。
提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
提供用于管理、检查、优化数据库操作的管理工具。
大型的数据库。可以处理拥有上千万条记录的大型数据库。
支持多种存储引擎。
MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
MySQL使用标准的SQL数据语言形式。
Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。等等 。