数据库的定义:
数据库是结构化信息或数据的有序集合,一般以电子形式存储在计算机系统中。通常由数据库管理系统 (DBMS) 来控制。在现实中,数据、DBMS 及关联应用一起被称为数据库系统,简称为数据库。
一、为什么需要数据库为什么有了文件还要有数据库呢?
文件保存数据有以下几个缺点:
文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便数据库和电子表格(Excel)的区别: 数据库和电子表格(例如 Microsoft Excel)都可以便捷地存储信息,两者的主要区别包括:
存储和操作数据的方式谁可以访问数据可以存储多少数据从一开始,电子表格就是专门针对单一用户而设计的,其特性也反映了这一点。它非常适合不需要执行太多高度复杂的数据操作的单一用户或少数用户。相反,数据库是为了保存大量甚至海量有组织的信息而设计的,它允许多个用户同时使用高度复杂的逻辑和语言,快速、安全地访问和查询数据。
二、数据库的相关概念 1.什么是结构化查询语言 (SQL)目前几乎所有的关系数据库都使用 SQL 编程语言来查询、操作和定义数据,进行数据访问控制。SQL 最初于 20 世纪 70 年代由 IBM 开发,当时 Oracle 是一个主要的贡献者,这推动了 SQL ANSI 标准的实施,而 SQL 的兴起也刺激了 IBM、Oracle 和 Microsoft 等公司开始全面扩张。时至今日,虽然 SQL 仍被广泛使用,但是新的编程语言也已经崭露头角。
SQL分类:
DDL【data definition language】 数据定义语言,用来维护存储数据的结构 代表指令: create, drop, alterDML【data manipulation language】 数据操纵语言,用来对数据进行操作 代表指令: insert,delete,update DML中又单独分了一个DQL,数据查询语言,代表指令: selectDCL【Data Control Language】 数据控制语言,主要负责权限管理和事务 代表指令: grant,revoke,commit 2.什么是数据库管理系统 (DBMS)数据库通常离不开完备的数据库软件程序,也就是数据库管理系统 (DBMS)。DBMS 充当数据库与其用户或程序之间的接口,允许用户检索、更新和管理信息的组织和优化方式。此外,DBMS 还有助于监督和控制数据库,提供各种管理操作,例如性能监视、调优、备份和恢复。
常见的数据库软件或 DBMS 有 MySQL、Microsoft Access、Microsoft SQL Server、FileMaker Pro、Oracle Database 和 dBASE。
3.什么是 MySQL 数据库MySQL 是一种开源的基于 SQL 的关系数据库管理系统。它专门针对 Web 应用进行设计和优化,可以在任何平台上运行。互联网的兴起带来许多新的和不同的需求,MySQL 开始成为 Web 开发人员以及基于 Web 的应用的首选平台。它可以处理数以百万计的查询和数以千计的事务,因此深受那些需要进行大量资金转账的电商企业的欢迎。随需应变的灵活性是 MySQL 的一项主要特点。
目前全球许多顶级的互联网网站和基于 Web 的应用均采用 MySQL 作为 DBMS,例如 Airbnb、Uber、LinkedIn、Facebook、Twitter 和 YouTube。
三、数据库分类目前数据库主要分为传统的关系型数据库(SQL)和非关系型数据库(NoSQL),当然还有近几年新出现的NewSQL新型数据库、分布式数据库等等。
1.关系型数据库(SQL)传统的关系型数据库有着悠久的历史,从上世纪60年代开始就已经在航空领域发挥作用。因为其严谨的一致性以及通用的关系型数据模型接口,收获了很大一批的用户。
关系型数据库是把数据以表的形式进行储存,然后再各个表之间建立关系,通过这些表之间的关系来操作不同表之间的数据。
常见的关系型数据库有MySQL、Oracle、PostgreSQL等等。
关系型数据库是依据关系模型来创建的数据库,所谓的关系模型是指“一对一、一对多、多对多”,通过关系模型来构建二维表格
一对一:身份证号、校园卡 一对多:班级-学生、部门-职员 多对多:课程-学生、书籍-作者
优点:
数据安全(磁盘)、数据一致性二维表结构直观,易理解使用SQL语句操作非常方便,可用于比较复杂的查询缺点:
读写性能较差不擅长处理较复杂的关系 2.非关系型数据库(NoSQL)到了2000年代,由于互联网应用的兴起,互联网应用需要支持大规模的并发用户,并且要保持永远在线。但是传统的关系型数据库却因为无法支持如此大规模数据和访问量而成为了整个系统的瓶颈。最简单直接的办法是不断升级硬件系统,使用