MySQL数据库学习----理论基础
一:数据存储发展过程
1. 人工管理阶段
主要存储在纸带、磁带等介质中,手工记录,效率低下。
2. 文件系统阶段
存储在计算机磁盘中,以文件形式出现,数据管理变得简单,但是数据没有结构化处理,不易于查询。
3. 数据库系统阶段
以数据库形式存储在计算机的磁盘上,用户可以通过数据库管理系统来查询数据。
二:数据库技术构成
1. 数据库系统(DataBase System----DBS)
不只是单纯的数据库,而是数据库、数据库管理系统、应用开发工具、数据库管理员和用户等的集合。
数据库是存储数据的地方、数据库管理系统(DataBase Management System---DBMS)是定义、管理、维护数据的软件、应用开发系统是需要使用数据库的软件。
2. SQL语言(Structured Query Language----结构化查询语言)
是一种数据库查询和程序设计语言,用来存取数据、查询数据、更新数据和管理数据库系统。
被美国国家标准学会和国际标准化组织通过为关系数据库语言的标准。
主要有DDL(定义数据表、表、视图、索引触发器)、DML(插入、查询、更新、删除数据)、DCL(控制用户访问权限)构成。
3. 数据库访问技术
只有使用了数据库访问技术,程序中嵌入的SQL语句才会起作用。不同程序语言访问数据库的方式是不一样的。
ODBC----为访问不同的关系数据库提供了一个共同的接口。使用ODBC来访问数据库必须安装驱动程序Connector/ODBC。
JDBC ----Java语言编写的类和接口,Java可以使用JDBC来访问数据库,需要安装驱动程序Connector/J。
ADO.NET ----是微软公司提供的组件,C#可以使用ADO.NET来访问数据库,需要安装驱动程序Connector/Net。
PHP中为程序员提供了MySQL功能模块,PHP可以通过MySQL功能模块来访问MySQL数据库。
三:常见的数据库系统
1. 甲骨文的Oracle
甲骨文公司是世界领先数据库软件开发商,当今世界最优秀的数据库,世界第一个支持SQL语言的数据库。
主要应用在大型系统,数据库非常复杂,管理不方便。
2. IBM的DB2
主要应用与OS/2、Windows等平台。
主要应用与大型系统,提供了高层次的数据利用性、数据完整性、高安全性、很强的可恢复性。
3. 微软的Access和SQL Server
Access----主要用于小型系统中,是Office系统中的一部分。
SQL Server----微软专用软件,不支持UNIX和Linux,主要应用于大型系统中。
4. 开源的MySQL
由瑞典MySQLAB公司开发,2008年被Sun公司10亿美元价格收购,2009年Oracle以74亿美元价格收购Sun公司,很多国内大型网站使用如新浪、网易等。
四:为什么使用MySQL数据库
1. MySQL是开放源代码的数据库
任何人都可以获取数据库代码,并且改进数据库BUG,开源、自由。
2. MySQL的跨平台性
不仅可以在Windows上运行,还可以在UNIX、Linux和MacOS等操作系统上运行。
3. 价格优势
任何人都可以在MySQL官网下载,社区版本的MySQL都是免费使用,即使需要付费的附加版本,价格也是很便宜。
4. 功能强大使用方便
多用户、多线程SQL数据库服务器。快速、有效和安全的处理大量数据,相对与Oracle来说,使用非常简单。
五:MySQL版本和获取
主要区分Windows版、UNIX版、Linux版和Mac OS版。根据自己的系统来选择数据库版本。
根据开发情况分为
Alpha----该版本处于开发阶段,可能增加新的功能或进行重大修改;
Beta----该版本处于测试阶段,开发已经基本完成,但没有进行全面测试;
Gamma----该版本是发行过一段时间的Beta版,比Beta版要稳定一些;
Generally Available(GA)----该版本已经足够稳定,可以在软件开发中应用。也称为Production版。
开发者可以在http://dev.mysql.com/downloads/下载不同版本的MySQL。
MySQL数据库学习----理论基础的更多相关文章
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Mysql数据库学习笔记之数据库索引(index)
什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...
- MySQL数据库学习: 01 —— 数据库的概述
壹 概述 一 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件). 易混淆:人们常常用“数据库”这个词语来代表他们使 ...
- MYSQL数据库学习笔记1
MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...
- mysql数据库学习目录
前面的话 对于前端工程师来说,数据库并不是主要技能点,但是基本的增删改查操作还是需要了解的.小火柴将mysql数据库的学习记录整理如下 目录 前端学数据库之基础操作 前端学数据库之数据类型 前端学数 ...
- mysql数据库学习(一)--基础
一.简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 R ...
- MySQL数据库学习笔记<一>
MySQL基本概念以及简单操作 一.MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系 ...
随机推荐
- java基础 6 基本类型与运算
1 包装类型 Integer的缓存池为 -128 - 127: 八个基本类型 占bit 与字节 8 bit = 1 字节 boolean 1 byte 8 char ...
- Oracle 12c agent install for linux
安装Agent代理 在EM11g时,agent安装是通过在被监制主机端下载agent代理并安装,在EM12c版本号上,能够在EM12c服务端.通过"推送"的方式把agent代理在远 ...
- Java并发编程(三)volatile域
相关文章 Java并发编程(一)线程定义.状态和属性 Java并发编程(二)同步 Android多线程(一)线程池 Android多线程(二)AsyncTask源代码分析 前言 有时仅仅为了读写一个或 ...
- Autolayout和VFL
Autolayout,開始于iOS6.0 一.什么时候用autolayout比較适合 1.不负责任的骑墙派说法:apple的设备越来越多了,你的应用应该都使用al. (而且用sb) 2.要 ...
- C#语言 数组
- 【转载】lvs为何不能完全替代DNS轮询
上一篇文章"一分钟了解负载均衡的一切"引起了不少同学的关注,评论中大家争论的比较多的一个技术点是接入层负载均衡技术,部分同学持这样的观点: 1)nginx前端加入lvs和keepa ...
- Network Booting
http://en.wikipedia.org/wiki/Network_booting Network booting Network booting is the process of booti ...
- 一道有关switch-case题目
一道有关switch-case题目 /** * * @title:SwitchCase.java * @Package:com.you.hbxs.model * @Description:<h3 ...
- centos下部署项目问题
最近写了商品管理的后台完成了一部分,用node+koa+mongodb搭建,现在想部署到自己的服务器上,部署的过程中遇到了一些坑.首先就是各种环境的搭建,搭建好了之后要把后台的代码传到服务器上运行,运 ...
- Android 代码写控件
1.设置dialog弹出anthor public static SearchDialog getSearchDialog(Context context,OnDismissListener list ...