1.数据库是做什么的?
但凡接触到数据库的童靴最起码应该对IT行业有基础的了解并且也掌握了一门基础语言,即使这样很多概念还是不能在大脑中建立体系,上一个帖子中已经教大家如何安装MySQL数据库,在我们学习之前先对数据库有一个基本的了解。
定义如下:
数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。
从定义中我们总结一下,数据库就是组织、管理、和存储数据的。如果不使用数据库又会如何?
那接下来我们用Java语言举个例子:
Student student = new Student();
student.setName("张三");
stduent.setAge(18);
案例中我们创建了一个student对象,这里对象创建成功之后信息是存储在内存中的,如果此时程序执行结束,内存中的数据也会随之消失,所以我们称为这样的数据为 “瞬时数据” 瞬间可能消失的数据。为了数据的能够保存下来, 大家可能想到使用IO流将数据保存至本地文件, 但是以本地文件的缺陷也是非常明显,其一是数据一旦多了不好管理和读取,其二是IO操作也比较繁琐,所以我们需要一个专门做数据管理的工具帮我们去处理这些繁琐的事情。
看到这里大家应该明白,数据库就是专门管理和存储数据的,随后我们开发过程中会产生大量的数据,这些数据只有通过数据库管理起来才能让我们开发简单方便,这就叫“专业的人做专业的事”。
2.数据库是什么?
初学者经常错误的把Navicat / SQLyong等连接数据库的工具当成数据库,其主要的原因是数据库在安装完成之后没有产生任何图标,这就导致我们误认为安装的连接工具就是数据库
那么数据到底是什么?
mysql是使用C和“C++”语言编写的一个管理系统,系统包含数据库和数据库服务:
数据库包含:据库基础文件和配置和数据库表文件(存储数据的文件)
数据库服务: 我们电脑->右键管理->服务->MySQL80服务
这就是全部的组成了,数据库安装后不会产生快捷打开方式,如果想连接数据库我们可以使用自带的命令行工具或者第三方工具。
所以千万不要把连接工具当成数据库!!!!
3.什么是关系型数据库?
关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织
简单的讲,关系型数据库就是有组织结构的数据模型,存在库、表概念,其中表与表之间还可以建立关联关系,这种数据库就是关系型数据库。
随着技术的增强,后面我们还是学习一些非关系型数据库,这里暂时先不介绍。
4.常见的数据库有哪些?
ORACLE
Oracle数据库是甲骨文公司推出的一个数据库管理系统。Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库解决方案。
MySQL
前身术语瑞典MySQL公司,08年被sun公司收购 09年sun被oracle收购,MySQL是一个关系型数据库管理系统,MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言,由于其体积小、速度快、开放源码等特点,一般中小型网站的开发都选择MySQL作为网站数据库。
Access
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是Microsoft Office 的系统程序之一。
MS ACCESS以它自己的格式将数据存储在基于Access Jet的数据库引擎里。它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。
DB2
DB2是IBM一种分布式数据库解决方案。说简单点:DB2就是IBM开发的一种大型关系型数据库平台。它支持多用户或应用程序在同一条SQL 语句中查询不同database甚至不同DBMS中的数据。
Sybase
Sybase提供了一套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。系统具有完备的触发器、存储过程、规则以及完整性定义,支持优化查询,具有较好的数据安全性。
MariaDB
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。MariaDB跟MySQL在绝大多数方面是兼容的,对于开发者来说,几乎感觉不到任何不同。MariaDB是发展最快的MySQL分支版本。
VF
VF一般是指visual foxpro。visual foxpro是Microsoft公司是一款快速处理数据的桌面型数据库开发软件。主要用于开发数据管理与运算等方面。visual foxpro独具特色的数据库容器提供了集中的数据管理功能,它支持面向对象的编程方法,可生成真正事件驱动的应用程序,与其他应用程序共享和交换数据,具有客户/服务器能力。
SqlServer
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。
SQLite
SQLite,是一款轻型的数据库,它是D.RichardHipp建立的公有领域项目。不像常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。