一、初识MySQL

一、数据库基础

1.1 什么是数据库

  数据库是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。

  数据库是一个按数据结构来存储和管理数据的计算机软件系统,它包含两层含义:

  (1)保管数据的“仓库”

  (2)数据管理的方法和技术

1.2 表

  在关系数据库中,数据库表是一系列二维数组的集合,用来存储数据和操作数据的逻辑结构。它由纵向的列和横向的行组成,行被称为记录,是组织数据的单位;列被称为字段,每一列表示记录的一个属性,都有相应的描述信息,如数据类型、数据宽度等。

1.3 数据类型

  数据类型决定了数据在计算机中的存储格式,代表不同的信息类型。常用的数据类型有:整数数据类型、浮点数据类型、精确小数类型、二进制数据类型、日期/时间数据类型、字符串数据类型。

1.4 主键

  主键用于唯一地标识表中的每一条记录。可以定义表中的一列或多列为主键,主键列中不能有两行相同的值,也不能为空值。

二、数据库技术构成

  数据库系统由硬件部分和软件部分共同构成,硬件主要用于存储数据库中的数据,包括计算机、存储设备等。软件部分则主要包括DBMS、支持DBMS运行的操作系统,以及支持多种语言进行应用开发的访问技术等。

2.1 数据库系统

  数据库系统主要有3个主要的组成部分:

  (1)数据库:用于存储数据的地方

  (2)数据库管理系统:用于管理数据库的软件

  (3)数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库的软件补充

  数据库提供了一个存储空间用以存储各种数据,可以将数据库视为一个存储数据的容器。一个数据库可能包含许多文件,一个数据库系统中通常包含许多数据库。

  数据库管理系统(DBMS)是用户创建、管理和维护数据库时所用的软件,位于用户和操作系统之间,对数据库进行统一管理。DBMS能定义数据存储结构,提供数据的操作机制,维护数据库的安全性、完整性和可靠性。

  虽然有了DBMS,但是在很多情况下,DBMS无法满足对数据管理的要求。数据库应用程序的使用可以满足对数据管理的更高要求,还可以数据管理过程更加友好和直观。数据库应用程序负责与DBMS进行通信、访问和管理DBMS中存储的数据,允许用户插入、修改、删除DB中的数据。

2.2 SQL语言

  对数据库进行查询和修改操作的语言叫做SQL。SQL包含以下4个部分:

    • 数据定义语言(DDL):DROP、CREATE、ALTER等语句
    • 数据操作语言(DML):INSERT、UPDATE、DELETE等语句
    • 数据查询语言(DQL):SELECT语句
    • 数据控制语言(DCL):GRANT、REVOKE、COMMIT、ROLLBACK等语句

2.3 数据库访问接口

  不同的程序设计语言会有各自不同的数据库访问接口,程序语言通过这些接口,执行SQL语句,进行数据库管理。主要的数据库访问接口有:

  (1)ODBC:Open Database Connectivity(ODBC,开放数据库互联技术)。为访问不同的SQL数据库提供了一个共同的接口。ODBC使用SQL作为访问数据的标准。这一接口提供了最大限度的互操作性:一个应用程序可以通过共同的一组代码访问不同的SQL数据库管理系统。

  (2)JDBC:Java Database Connectivity(JDBC,Java数据库连接)。用于Java应用程序连接数据库的标准方法,是一种用于执行SQL语句的Java API,可以为多种关系型数据库提供统一访问。

  (3)ADO.NET:是微软在.NET框架下开发设计的一组用于和数据源进行交互的面向对象类库。

  (4)PDO:(PHP Data Object)为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据。

三、MySQL的优势

  MySQL的主要优势如下:

  (1)速度:运行速度快

  (2)价格:MySQL对多数个人来说是免费的

  (3)容易使用:与其他大型数据库的设置和管理相比,其复杂程度较低,易于学习

  (4)可移植性:能够工作在众多不同的系统平台上,例如:Windows、Linux、Unix、Mac OS等

  (5)丰富的接口:提供了用于C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等语言的API

  (6)支持查询语言:MySQL可以利用标准SQL语法和支持ODBC(开放式数据库连接)的应用程序

  (7)安全性和连接性:十分灵活和安全的权限和密码系统,允许基于主机的验证。连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全。并且由于MySQL是网络化的,因此可以在因特网的任何地方访问,提高数据共享的效率

原文地址:https://www.cnblogs.com/xmcwm/p/14945650.html