MySQL——基本概念
1.数据库:是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。它是一个按数据结构来存储的和管理数据的计算机软件系统,即数据库包含两层含义:保管数据的“仓库”,以及数据管理的方法和技术。
2.数据库的特点:实现数据共享,减少数据冗余;采用特定的数据类型;具有较高的数据独立性;具有统一的数据控制功能;
3.数据库表:在关系数据库中,数据库表示一系列二维数组的集合,用来存储数据和操作数据的逻辑结构。它由纵向的列和横向的行组成,行被称为记录,是组织数据的单位;列被称为字段,每列表示记录的一个属性,都有相应的描述信息,如数据类型、数据宽度等。
4.数据类型:数据类型决定了数据在计算机中的存储格式,代表不同的信息类型。常用的数据类型有:整数数据类型、浮点数数据类型、精确小数类型、二进制数据类型、日期/时间数据类型、字符串数据类型。
5.主键:又称主码,用于唯一地标识表中的每一条记录。可以定义表中的一列或多列为主键,主键列上不能有两行相同的值,也不能为空值。
6.数据库系统有3个主要的组成部分:
1).数据库:用于存储数据的地方。
2).数据库管理系统:用于管理数据库的软件。
3).数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库的软件补充。
7.数据库管理系统(database management system,dbms):用户创建、管理和维护数据库所使用的软件,位于用户与操作系统之间,对数据库进行统一管理。dbms能定义数据存储结构,提供数据的操作机制,维护数据库的安全性、完整性和可靠性。
8.数据库应用程序:负责与dbms进行通信、访问和管理dbms中存储的数据,允许用户插入、修改、删除db中的数据,使数据管理过程更加直观和友好。
9.sql语言(structured query language):又称结构化查询语言,对数据库进行查询和修改操作的语言。
10.sql包含以下4个部分:
1).数据定义语言(ddl):定义和管理数据对象,如数据库、数据表等,主要包括drop、create、alter等语句。
2).数据操作语言(dml):用于操作数据库对象中所包含的数据,包括insert、update、delete语句。
3).数据查询语句(dql):用于查询数据库数据,select语句。
4).数据控制语句(dcl):用来管理数据库的语言,包括管理权限及数据更改,主要包括grant、revokr、commit、rollback等语句。
11.数据库访问接口
不同的程序设计语言会有各自不同的数据库访问接口,程序语言通过这些接口,执行sql语句,进行数据库管理。主要的数据库访问接口有:
1).odbc
open database connectivity(odbc.开放数据库互连)技术为访问不同的sql数据库提供了一个共同的接口。odbc使用sql作为访问数据的标准。这一接口提供了最大限度的互操作性:—个应用程序可以通过共同的一组代码访问不同的sql数据库管理系统(dbms)。
—个基于odbc的应用程序对数据库的操作不依赖任何dbms,不直接与dbms打交道,所有的数据库操作由对应的dbms的odbc驱动程序完成。也就是说,不论是access、mysql还是oracle数据库,均可用odbc api进行访问。由此可见,odbc的最大优点是能以统一的方式处理所有的数据库。
2).jdbc
java data base connectivity(jdjbc,java数据库连接)用于java应用程序连接数据库的标准方法,是一种用于执行sql语句的java api,可以为多种关系数据库提供统一访问,它由一组用java语言编写的类和接口组成。
3).ado.net
ado.net是微软在.net框架下开发设计的一组用于和数据源进行交互的面向对象类库。ado.net提供了对关系数据、xml和应用程序数据的访问,允许和不同类型的数据源以及数据库进行交互。
4).pdo
pdo (php data object)为php访问数据库定义了一个轻量级的、一致性的接口,它提供了—个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行査询和获取数据。pd0是php5新加入的一个重大功能。
针对不同的程序语言,mysql提供了不同数据库的访问连接驱动,读者可以在下载页面 (http://dev.mysql.com/downloads/)下载相关驱动。
12.mysql:小型关系数据库管理系统,与其他大型数据库管理系统(如oracle、db2、sql server等)相比,mysql规模小、功能有限、但是体积小、速度快、成本低,且它提供的功能对稍微复杂的应用来说已经够用。
13.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是网络化的,因此可以在因特网上的任何地方访问,提高数据共享的效率。
推荐阅读
-
MySQL5.7完全卸载步骤详解
-
概述MySQL统计信息
-
mysql 5.7以上版本安装配置方法图文教程(mysql 5.7.12mysql 5.7.13mysql 5.7.14)
-
MySQL常见内存不足启动失败的完美解决方法
-
随机生成八位优惠码并保存至Mysql数据库
-
Mysql5.7中使用group concat函数数据被截断的问题完美解决方法
-
Mysql5.7.17 winx64.zip解压缩版安装配置图文教程
-
MySQL SQL语句分析与查询优化详解
-
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
-
解决mysql ERROR 1045 (28000)-- Access denied for user问题