html5全栈开发全套教程之MySQL数据库开发

一、 MySQL 

1. 简介

MySQL原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被昇阳微系统(Sun Microsystems)收购。2009年,甲骨文公司(Oracle)收购昇阳微系统公司,MySQL成为Oracle旗下产品。

MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如维基百科、GoogleFacebook等网站。非常流行的开源软件组合LAMP中的“M”指的就是MySQL

2. 特性

使用CC++编写,并使用了多种编译器进行测试,保证源代码的可移植性。

支持LinuxMac OSNovell NetWareNetBSDOpenBSDOS/2 WrapSolarisWindows等多种操作系统。

为多种編程语言提供了API。这些編程语言包括CC++C#VB.NETDelphiEiffelJavaPerlPHPPythonRubyTcl等。

支持多线程,充分利用CPU资源,支持多用户。

優化的SQL查询算法,有效地提高查询速度。

既能够作为一个单独的应用程序在客户端服务器网络环境中运行,也能够作为一个程序库而嵌入到其他的软件中。

提供多语言支持,常见的编码如中文的GB 2312BIG5,日文的Shift JIS等都可以用作數據表名和數據列名。

提供TCP/IPODBCJDBC等多种数据库连接途径。

提供用于管理、检查、優化数据库操作的管理工具。

可以处理拥有上千万条记录的大型数据库。

3. 业界应用

与其他的大型数据库例如OracleIBM DB2MS SQL等相比,MySQL自有它的不足之处,如规模小、功能有限等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人用户和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源代码软件,因此可以大大降低总体拥有成本。

2010年以前Internet上流行的网站构架方式是LAMPLinux Apache MySQL PHP),即是用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP(部分网站也使用PerlPython)作为服务器端脚本解释器。由于这四个软件都是开放源代码软件,因此使用这种方式可以以较低的成本创建起一个稳定、免费的网站系统。MySQLPHP的配对在互联网上的应用相比LAMP来说更为常见,并获得了“动态配对”(Dynamic Duo)的雅号,大部分Blog网站基于的WordPress系统主要运用MySQLPHP的配对。除了LAMP之外,用于SolarisWindowsMac上的网站构架也分别被称为SAMPWAMPMAMP

维基百科所使用的Mediawiki维基引擎采用PHP语言写成,并以MySQL作为其支持的其中一种数据库管理系统。

 

除了维基百科,国外的Facebook, Google, Adobe都在使用;国内的百度、阿里、腾讯、新浪都在使用

二、 课程大纲

MySQL相关课程内容在下面思维导图中列出


 

 

我们逐一简要说明

 

数据存储:数据库简单理解就是数据存储的仓库我们通过数据库实现对大量数据的维护。我们通过数据库,可以方便、高效的完成对数据的各种操作。

 

环境安装上一个章节我们介绍的目前比较流行的开发环境就是LAMP也就是LinuxApacheMySQLPHP。我们在学习MySQL时,为了将学习重点放到MySQL上,用我们比较熟悉的windows操作系统来代替Linux。也就是说,我们需要在windows上安装ApacheMySQLPHP三个环境那么为了便于安装我们选择了xamppXAMPPApache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。它可以在WindowsLinuxSolarisMac OS X 等多种操作系统下安装使用我们只要安装了这个软件就可以开始我们的MySQL之旅了那么在开始实际操作之前我们还有了解一些数据库方面的基本概念

 

基本概念

数据库

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,

每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。

我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。

所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

RDBMS即关系数据库管理系统(Relational Database Management System)的特点:

1.数据以表格的形式出现

2.每行为各种记录名称

3.每列为记录名称所对应的数据域

4.许多的行和列组成一张表单

5.若干的表单组成database

数据库: 数据库是一些关联表的集合。

表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。

字段

数据类型

MySQL定义了很多的数据类型大体可分为数值类型字符串类型日期和时间类型等

主键&外键

主键:关系数据库中的一条记录中有若干个属性,若其中某一个属性组能唯一标识一条记录,改属性组就可以成为一个主键。

外键外键用于与另一张表的关联是能确定另一张表记录的字段,用于保持数据的一致性。

数据行

数据库表中的一条数据在表中以一行的形式显示所以一条数据又叫数据行

 

SQL语句

数据库操作

创建库: CREATE DATABASE `student`

 

CREATE TABLE students(

   id INT NOT NULL AUTO_INCREMENT,

   name VARCHAR(100) NOT NULL,

   tel VARCHAR(40) NOT NULL,

   birthday DATE,

   PRIMARY KEY (id )

);

数据操作

添加数据

INSERT INTO table_name (column1, column2, column3,...)

VALUES (value1, value2, value3,...)

删除数据

DELETE FROM table_name

WHERE some_column = some_value

修改数据

UPDATE table_name

SET column1=value, column2=value2,...

WHERE some_column=some_value

查询数据

条件查询

SELECT column_name(s)

FROM table_name

WHERE column_name operator value

结果排序

SELECT column_name(s)

FROM table_name

ORDER BY column_name(s) ASC|DESC

PHP连接数据库

PHP基础知识阶段我们使用PHP中的mysqli进行数据库操作具体步骤为

1. 创建数据库连接

2. 构造SQL语句字符串

3. 执行SQL语句

4. 查看执行结果

5. 关闭连接

一、 实战项目

我们会在后期进行一个电商平台的实战项目项目整体采用前后端分离的架构后端使用PHPMySQL搭建一个restfulAPI接口实现数据动态刷新具体项目相关内容请参加PHP项目开发相关文档

以上 

PHGAP

猜你喜欢

转载自blog.csdn.net/programmer_feng/article/details/78855743