一、数据库引擎
答:数据库引擎是用于存储、处理和保护数据的核心服务。利用数据库引擎可控制访问权限并快速处理事务,从而满足企业内大多数需要处理大量数据的应用程序的要求。
简言之,数据库引擎就是一段用于支撑所有数据库操作的核心程序,就如名称一样,是一个车的引擎功能;
常见的数据库引擎有:

(1)Microsoft JET (Joint Engineering Technologe) 用于Access和VB的内嵌数据库功能的核心元素;

(2)ODBC(Open DataBase Connectivity,开放数据库互连)是由Microsoft定义的一种数据库访问标准,它提供一种标准的
数据库访问方法以访问不同平台的数据库。一个ODBC应用程序既可以访问在本地PC机上的数据库,也可以访问多种异构平台
上的数据库,例如SQL Server、Oracle或者DB2;

(3)OLE DB是Microsoft开发的最新数据库访问接口,Microsoft将其定义为ODBC接班人;

(4)MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB)也常常可以使用;

A、ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源。ISAM的两个主要不足之处在于,
它不 支持事务处理,也不能够容错;
B、MyISAM是MySQL的ISAM扩展格式和缺省的数据库引擎MYISAM。除了提供ISAM里所没有的索引和
字段管理的大量功能,MyISAM还使用一种表格锁定的机制,来优化多个并发的读写操作,其代价是你
需要经常运行OPTIMIZE TABLE命令,来恢复被更新机制所浪费的空间;
C、HEAP允许只驻留在内存里的临时表格。驻留在内存里让HEAP要比ISAM和MYISAM都快,但是它所
管理的数据是不稳定的,而且如果在关机之前没有进行保存,那么所有的数据都会丢失。

二、数据库索引

答:定义:数据库索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息;
举例:employee 表的人员编号列(id)就是数据库索引,select * from employee where id=10000即可查找编号10000的人员信息。如果没有索引,必须遍历整个表直到id=10000;

三、数据库索引作用:

一,大大加快 数据的检索速度,这也是创建索引的最主要的原因;
二,保证数据库表中每一行数据的唯一性;
三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义; 
四,在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间; 
五,通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。

四、数据库索引缺陷:

一,表的增删改查、创建索引和维护索引要耗费时间;
二,索引需要占物理空间;

五、数据库索引的两个特征:索引有两个特征,即唯一性索引和复合索引;

A、唯一 性索引保证在索引列中的全部数据是唯一的,不会包含冗余数据;

B、复合索引就是一个索引创建在两个列或者多个列上,搜索时需要两个或者多个索引列作为一个关键值;

六、数据库索引好比是一本书前面的目录,索引分为聚簇索引和非聚簇索引两类:

1)聚簇索引是按照数据存放的物理位置为顺序的,其多个连续行的访问速度更快;

2)非聚簇索引是按照数据存放的逻辑位置为顺序的,其单行访问速度更快;