数据库引擎
数据库引擎是数据库管理系统用来在数据库中進行创建、读取、更新和删除（CRUD）数据的底层软件组件。大多数数据库管理系统都提供应用程序接口(API)，允许程序員通過API与其底层的数据库引擎进行交互。许多数据库管理系统支持多个數據庫引擎，例如MySQL支持InnoDB以及MyISAM 。
HSQLDB
HSQLDB有两个主要的表类型，用于持久读写数据的存储（即如果事务已成功提交,它能够保证出现系统故障时数据不丢失,并保持其完整性）。
Java数据库连接
优点： 缺点：
数据库
資料庫，又称为数据管理系统，簡而言之可視為電子化的檔案櫃——儲存电子檔案的處所，使用者可以對檔案中的資料執行新增、擷取、更新、刪除等操作。
图数据库
图数据库的底层存储机制可能各有不同。有些依赖于关系引擎并将图数据“存储”到表中（虽然表是一个逻辑元素，但是这种方法在图数据库、图数据库管理系统和实际存储数据的物理设备之间施加了另一层抽象）。另一些则使用键值存储或文件導向的數據庫进行存储，使它们具有固有的NoSQL结构。大多数基于非关系存储引擎的图数据库还添加了标记或属性的概念，这些标记或属性本质上是具有指向另一个文档的指针的关系。这样就可以对数据元素进行分类，以便于集中检索。
对象数据库
访问数据可以更快，表的联合常常是不必要的（在关系数据库的表实现方式下）。这是因为无需查询只需通过指针（）就可以直接获得对象。
可扩展存储引擎
数据库既是数据的物理存在，也是它的逻辑分组。ESE数据库看上去就只是一个Windows上的文件。在数据库内部，它是一个2、4、8、16或32 KB的页面的集合（16和32 KB页面选项仅在Windows 7和Exchange 2010中可用），布置在一个平衡的B树结构中。这些页面包含元数据，用以描述数据库中包含的数据、数据本身、数据索引，以及其他信息。这些信息在数据库文件中混合存在，但数据会尽量集中。一个ESE数据库可能包含最多2 个页面，或16 TB的数据（如果使用8 KB的页面）。
CouchDB
其他功能包括文档级别的ACID语义和最终一致性，MapReduce，复制（Replication）。它还支持通过一个做Futon的内置web应用程序来进行数据库管理。
Superbase database
SuperBase是Windows环境下的一个数据库软件，可采用密码技术将程序文件夹加密成密文文件，结合编辑保护，对软件提供安全保护。
OLE DB
另一方面，由于不同的数据存储技术可能具有不同的能力，OLE DB提供者不需要实现OLE DB中每一个接口。通过使用COM对象实现可用的能力 - OLE DB提供者将把数据存储技术的功能映射到特定的COM接口上。当某种接口提供的能力在所使用的数据库技术中不适用时，微软称该接口的可用性为"provider-specific"。同时，提供者也可以扩大数据存储的能力 - 这些能力在微软的用语中被称为"services"。 对SQL Server： 对Microsoft Access:
时间数据库
传统数据库管理系统（DBMS）具有支持时间和日期的数据类型，但不能直接支持和管理时态数据，关于时态方面的操作需要由另行编写的应用程序完成。时态数据库管理系统（TDBMS）具有提供时态数据操作和支持时态数据管理的基本功能。 一个TDBMS需要具有下述子系统：
关系数据库
关系数据库（），是建立在关系模型基础上的数据库，借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由埃德加·科德于1970年首先提出的，並配合“科德十二定律”。现如今虽然对此模型有一些批评意见，但它还是数据存储的传统标准。标准数据查询语言SQL就是一种基于关系数据库的语言，这种语言执行对关系数据库中数据的检索和操作。
键-值存储
键-值数据库可以使用的一致性模型，范围包括从结果一致性到可序列化。有的支持有序的键。有的在内存内维持数据，而另一些采用固态硬盘或旋转硬盘。
封锁 (数据库)
封锁是一项用于多用户同时访问数据库的技术，是实现并发控制的一项重要手段，能够防止当多用户改写数据库时造成数据不一致与冲突。当有一个用户对数据库内的数据进行操作时，在读取数据前先锁住数据，这样其他用户就无法访问和修改该数据，直到这一数据修改并写回数据库解除封锁为止。詹姆斯·尼古拉·格雷最早完整描述了数据库锁。
MySQL数据库引擎的比较
这是MySQL数据库管理系统（DBMS）的可用数据库引擎之间的比较。 数据库引擎 （或“存储引擎”）是DBMS用于从数据库增刪查改（CRUD）数据的底层软件组件。
MaxDB
MaxDB包括一系列的管理和开发工具。这些工具大多都基于图形用户界面，并有命令行界面副本。它提供对JDBC、ODBC、SQLDBC、Precompiler、PHP、Perl、Python、WebDAV的接口，OLE DB、ADO、DAO、RDO和.NET则可通过ODBC与MaxDB连接，Delphi与TCL可通过第三方程序接口与MaxDB连接。MaxDB可跨平台工作，有HP-UX、AIX、Linux、Solaris、Windows 2000、Windows Server 2003和Windows XP的版本。SAP用户可在SAP产品页面上查到能与MaxDB配套使用的产品的平台的详细可用信息。
图数据库
在计算机科学中，图数据库（，GDB）是一个使用图结构进行语义查询的数据库，它使用节点、边和属性来表示和存储数据。该系统的关键概念是图，它直接将存储中的数据项，与数据节点和节点间表示关系的边的集合相关联。这些关系允许直接将存储区中的数据链接在一起，并且在许多情况下，可以通过一个操作进行检索。图数据库将数据之间的关系作为优先级。查询图数据库中的关系很快，因为它们永久存储在数据库本身中。可以使用图数据库直观地显示关系，使其对于高度互连的数据非常有用。
PostgreSQL
新项目Postgres的目的是通过增加最少的功能来完全支持所需要的类型。这些功能包括类型定义和完整描述数据关系的能力。完整描述数据关系的能力之前虽广为使用但却需要由用户来维护。Postgres的数据库能够"理解"关系，并可以使用一定的规则以自然方式在相关的表中检索信息。
连接池
在软件工程中，连接池（）是维护的数据库连接的缓存，以便在将来需要对数据库发出请求时可以重用连接。 连接池用于提高在数据库上执行命令的性能。为每个用户打开和维护数据库连接，尤其是对动态数据库驱动的網站应用程序发出的请求，既昂贵又浪费资源。在连接池中，创建连接之后，将连接放在池中并再次使用，这样就不必建立新的连接。如果所有连接都正在使用，则创建一个新连接并将其添加到池中。连接池还减少了用户必须等待建立与数据库的连接的时间。
时间数据库
只要在事务维中任意截取事务时间点就可以找到相应的元组的有效时间段，不同的事务时间点对应不同的有效时间段（一般是这样的，当然也有有效时间段是一样的不同事务时间点，如事务时间点T1 和T2 的有效时间段是一样的）。 可以看出，在事务时间轴上，取不同的时间点，就产生不同的历史数据库，我们可以对上图中的对应于四个事务时间点T1，T2，T3，T4的历史数据库进行查询操作。当然图中所示的只是一个元组的四个历史数据库中的有效时间片断组合，对于其他元组的情况可以类似的进行推理，而后，这些元组组合到一起即形成了四个不同的历史数据库。 所以，这四个历史数据库也可以成为是快照历史数据库，说是快照，是因为这四个数据库是分别是四个事务时间的快照；说是历史数据库，是因为每个数据库里面的纪录是历史数据库属性的，记载的是现实元组的真实变化的时间，而非数据库状态变化的时间，我们可以在这四个数据库里面进行增加、改正、删除及查询的工作。 在双时态数据库中，我们可以在当前时间对以前的事务时间T1时的该元组属性或有效时间进行改动。例如，可以在T4时间对T1时的历史快照数据库进行修改，通过改变有效时间区间t1，t2和t3为t1和 t3。可使得在T1时的快照历史数据库中的元组属性（时间属性）得到了改变。但原先事务时间不能改动，只是增加了一个新的纪录，该记录的事务时间是T4，记录内容是把原来的有效时间进行了改变。 由此可见，双时态数据库具有回滚数据库和历史数据库的特性，在保存数据库变迁历史的同时，也保存了现实世界的真实的数据属性，真正体现了对数据时态属性的全面支持。当然，时态数据库是以牺牲大容量的储存空间为代价的，对双时态数据库的储存进行优化是时态数据库研究的一个重要工作。 目前，时态数据查询语言主要由下述三种类型。 TempSQL是在1985年由S.Gadia和S.Nair提出，作为一种类SQL的时态数据库查询语言，TempSQL引入了双时态机制，数据库可以对数据本身历史（有效时间）、对数据进行插入、删除和更新等的历史（事务时间）、数据库和用户出错的历史等进行管理。TempSQL保持时态数据与静态数据的无缝连接，而将快照数据看做是时间标签为[now,now]的一个特例。 在TempSQL中，元组中主键属性（例如学生信息元组中的学号属性）不能随时间变化，而非主键属性（例如学生元组中“住址”、“年龄”和“联系方式”等属性）在不同时间内可以有不同取值。
系统架构演进
归属用户服务器（HSS，Home Subscriber Server）：HSS是一个中央数据库，包含与用户信息和所订阅的服务的信息。HSS的功能包括:移动性管理，呼叫和会话建立的支持，用户认证（authentication）和访问授权（authorization）。 HSS的功能是2G、3G核心网的归属位置寄存器（HLR）和认证中心（AuC）的扩展。
綱要 (資料庫)
一个数据库包含一个或多个命名的模式， 模式包含其它命名的对象，如表、数据类型、函数、操作符等。在不同的模式里使用同名的对象不会导致冲突。例如，schema1 和 schemaA 都可以包含叫做 mytable 的表。一个用户可以访问所连接的数据库中的任意模式中的对象，只要有这个权限。 Apache Derby数据库（即Java DB）的任何connection的当前schema，默认是对应于该用户名的一个schema。如果无用户名被提供，那么当前用户名与当前schema缺省是APP。
PostgreSQL
如果很粗略地观察PostgreSQL，会觉得这个数据库系统和其它数据库很类似。因为PostgreSQL使用SQL语言来执行资料的查询。这些资料通过外键联系在一起，以一系列表格的形式存在。PostgreSQL相对于竞争者的主要优势为可编程性：对于使用数据库资料的实际应用，PostgreSQL让开发与使用变得更简单。
关系数据库
SQL（Structured Query Language）语言是1974年由Boyce和Chamberlin提出的一种介于关系代数与关系演算之间的结构化查询语言，是一个通用的、功能极强的关系性数据库语言。
CouchDB
不同于关系型数据库，CouchDB没有将数据和关系存储在表格里。替代的，每个数据库是一个独立的文档集合。每一个文档维护其自己独立的数据和自包涵的schema。一个应用程序可能会访问多个数据库，比如其中一个位于用户的手机上，另一个位于在远程的服务器上。文档的元数据包含版本信息，让其能够合并可能因为数据库链接丢失导致的任何差异。
数据库事务
并非任意的对数据库的操作序列都是数据库事务。数据库事务拥有以下四个特性，习惯上被称之为ACID特性。
NoSQL
当代典型的關聯式資料庫在一些数据敏感的应用中表现了糟糕的性能，例如为巨量文档建立索引、高流量网站的网页服务，以及发送流式媒体。关系型数据库的典型实现主要被调整用于执行规模小而读写频繁，或者大批量读而极少写访问的事务。
数据模型
在软件工程中，数据模型是定义数据如何输入和与输出的一种模型。其主要作用是为信息系统提供数据的定义和格式。数据模型是数据库系统的核心和基础，现有的数据库系统都是基于某种数据模型而建立起来的。
事務隔離
并发控制描述了数据库事务隔离以保证数据正确性的机制。为了保证并行事务执行的准确执行，数据库和存储引擎在设计的时候着重强调了并发控制这一点。典型的事务相关机制限制数据的访问顺序（）以满足可序列化和。限制数据访问意味着降低了执行的性能，并发控制机制就是要保证在满足这些限制的前提下提供尽可能高的性能。在不损害正确性的情况下，可序列化的要求经常会为了性能而妥协，但是为了避免数据一致性的破坏，不能够妥协。
数据库事务
但在现实情况下，失败的风险很高。在一个数据库事务的执行过程中，有可能会遇上事务操作失败、数据库系统／操作系统出錯，甚至是存储介质出錯等情况。这便需要DBMS对一个执行失败的事务执行恢复操作，将其数据库状态恢复到一致状态（数据的一致性得到保证的状态）。为了实现将数据库状态恢复到一致状态的功能，DBMS通常需要维护以追踪事务中所有影响数据库数据的操作。
图数据库
图数据库是一种非关系型数据库，以解决现有关系数据库的局限性。图模型明确地列出了数据节点之间的依赖关系，而关系模型和其他NoSQL数据库模型则通过隐式连接来链接数据。图数据库从设计上，就是可以简单快速地检索难以在关系系统中建模的复杂层次结构的。图数据库与20世纪70年代的网络模型数据库相似，它们都表示一般的图，但是网络模型数据库在较低的抽象层次上运行，并且不能轻松遍历一系列边。
对象数据库
基于持久编程的对象数据库在一些应用领域获得了认可，如工程和空间数据库，通信和科学领域如高能物理和分子生物。他们对主流的商业数据处理没有什么影响，尽管获得了一些应用在部分特殊领域如金融服务。值得指出的是：对象数据库保持着「世界上最大的数据库（超过1000Terabytes在斯坦福线性加速中心）和最高摄取率（一Terabyte每小时）」的记录。
时间数据库
事务时间（Transaction Time）是指对给定数据库对象进行数据操作例如插入、删除或修改的时间，是一个事实进入并存储于数据库当中的时间。事务时间记录对数据库更新的各种操作历史，对应于现有事务或现有数据库状态变迁的历史。例如，数据录入数据库的时间，对其进行查询的时间，对其进行删除或修改的时间。 事务时间对应于现有事务或现有数据库的状态变迁历史，独立于相应实际应用，用户不能对事务时间进行任何处理。数据库中数据录入、修改和删除的时间由系统时钟决定，每次更新后数据不可再予以改变，因此，事务时间也称为系统时间（system time）。处理事务时间的方法是存储所有数据库的状态，即处理一个事务之后就存储一种数据库状态。任何对数据的更新只能对最后一个状态进行，但可查询任意一个状态。事务时间有如下主要特点：
面向文檔的數據庫
这两个文档相互共享一些结构性元素，但每个都有唯一性元素。在文档内部的结构和正文及其他数据通常被称为文档的“内容”，并可以通过通过检索或编辑方法（见下文）来引用。关系数据库中，所有记录包含同样的字段，保留未使用字段为空；不同于关系数据库，在上述例子的这两个文档（记录）中都没有空“字段”。这种方式允许向某些记录增加新信息而不要求在数据库中的所有其他记录共享相同结构。
化学数据库
在一定的空间限制条件下，搜索物质特定的三维构象，也是化学数据库常需要实现的功能之一（尤其是在药物设计领域）。这样的搜索相当消耗资源，因而人们也设计了多种近似方法来加以解决。
事務隔離
在数据库事务的ACID四个属性中，隔离性是一个限制最宽松的。为了获取更高的隔离等级，数据库系统的通常使用锁机制或者多版本并发控制机制。 应用软件也需要额外的逻辑来使其正常工作。
论域
数据库是指由一个系統在某一角度上的真實所建成的模型。通常称此類事实为"论述全集"或"论域"。
时间数据库
回滚数据库和历史数据库各具优点，因此，可以设计一种数据库，使它既支持事务时间又支持有效时间，这就是双时态数据库（Bitemporal Database）。双时态数据库集成了前三种类型数据库的基本功能特性，储存了数据库和现实世界两者发展的历史。 双时态数据库由时态关系组成，其时态关系是一个四维结构。其中两维是属性和元组，另外两维是事务时间和有效时间，一个时态关系可以看成是一个历史关系的序列。对时态关系的一个回滚操作则是选取了一个特定的历史关系，可对该历史关系进行查询。而每一个事务则引起一个新的历史关系的建立。双时态数据库如图2所示。
Berkeley DB
Berkeley DB（BDB）是一个高效的嵌入式数据库和键-值数据库编程库，C语言、C++、Java、Perl、Python、Tcl以及其他很多语言都有其对应的API。Berkeley DB可以保存任意类型的键/值对（Key/Value Pair），而且可以为一个键保存多个数据。Berkeley DB支持让数千的并发线程同时操作数据库，支持最大256TB的数据，广泛用于各种操作系统，其中包括大多数类Unix操作系统、Windows操作系统以及实时操作系统。
数据库
随着数据库技术与其他分支学科技术的结合，出现了多种新型数据库，例如：与分布处理技术结合产生的分布式数据库、与并行处理技术结合产生的并行数据库、与人工智能结合产生的演绎数据库、与多媒体技术结合产生的多媒体数据库。另外，数据库技术应用于特定的领域，出现了工程数据库、 地理数据库、统计数据库、空间数据库等特定领域数据库。幾乎所有的資料庫管理系統都配備了一個開放式資料庫連接（ODBC）驅動程式，令各個資料庫之間得以互相整合。 随着互联网的普及，数据库使用环境也随之发生变化，这种变化主要体现为XML和Java技术的大量使用、要求支持各种互联网环境下的应用服务器、极容易出现大量用户同时访问数据库、要求支持7x24小时不间断运行和高安全性等。
数据库索引
数据库索引，是数据库管理系统中一个排序的数据结构，以协助快速查询、更新数据库表中数据。
负载均衡
为了避免数据库出现单点故障，并且提高其扩展性，数据库通常会复制到多台服务器上，通过负载均衡器来分发请求到数据库服务器上。微软ASP.NET中的状态服务器技术就是一个典型的会话数据库的例子。集群中的所有服务器都将它们的会话信息保存到状态服务器上，同时它们可以向状态服务器查询会话数据。
负载均衡
理想下，在负载均衡后面的服务器集群（Server cluster）不应该保存会话（session-aware），如此一来，一个用户不管什么时候连接任何一个后端服务器都不会收到影响。常用的方案是通过一个磁盘数据库（传统数据库）或者一个内存数据库（如： Memcached），实例可参考：Django 缓存框架。 将会话信息存到磁盘数据库的这个方案由于会增加数据库的负载，所以这个方案对性能的提高并不好。磁盘数据库最好是用来存储会话时间比较长的会话数据。
Redis
Redis的外围由一个键、值映射的字典构成。与其他非关系型数据库主要不同在于：Redis中值的类型不仅限于字符串，还支持如下抽象数据类型：值的类型决定了值本身支持的操作。Redis支持不同无序、有序的列表，无序、有序的集合间的交集、并集等高级服务器端原子操作。
数据库营销
将客户的销售历史数据等营销数据建立数据库，并根据对数据库内数据的分析，确认目标客户，迅速准确地获知其需求，了解其特征，传达产品和服务的相关信息，以便更有效地进行市场营销活动，维系顾客和提高销售额。
DBeaver
DBeaver功能包括：不同数据库之间可用的特性存在差异。
Apache HBase
虽然最近性能有了显著的提升，HBase 还不能直接取代SQL数据库。如今，它已经应用于多个数据驱动型网站，包括 Facebook的消息平台。
内存数据库
内存数据库是指一种将全部内容存放在内存中，而非传统数据库那样存放在外部存储器中的数据库。内存数据库指的是所有的数据访问控制都在内存中进行，这是与磁盘数据库相对而言的，磁盘数据库虽然也有一定的缓存机制，但都不能避免从外设到内存的交换，而这种交换过程对性能的损耗是致命的。由于内存的读写速度极快（双通道DDR3-1333可以达到9300 MB/s，一般磁盘约150 MB/s），随机访问时间更是可以纳秒计（一般磁盘约10 ms，双通道DDR3-1333可以达到100 ns），所以这种数据库的读写性能很高，主要用在对性能要求极高的环境中，但是在服务器关闭后会立刻丢失全部储存的数据。常见的例子有MySQL的MEMORY存储引擎、eXtremeDB、FastDB、SQLite、Microsoft SQL Server Compact等。
数据库
事务（transaction）包含一组数据库操作的逻辑工作单元，在事务中包含的数据库操作是不可分割的整体，这些操作要么一起做，要么一起回滚（Roll Back）到执行前的状态。 事务的ACID特性：
化学数据库
大多数数据库所记录的都是稳态分子的信息，但也有一些反应数据库，着重记录反应中瞬间产生的亚稳态分子或中间体。这类反应数据库一般还会提供反应前驱物、产物和反应机理的信息。
多模型数据库
多模型数据库 (Multi-model database), 是下一代新型数据库，与传统的数据库系统只支持单一数据模型不同，多模型数据库是一种在统一、综合的平台下同时支持多种不同的数据模型的数据库，这些数据模型可包括传统的关系模型和NoSQL数据模型 (文档模型，键值模型，图模型)，一个重要的特性是，多模型数据库拥有自己的一种或多种查询语言，可以非常灵活的方式访问多种不同数据模型，甚至是跨模型的JOIN操作，这使得数据组织，存储，操作较以往更加灵活，便捷。 值得一提的是，许多关系和非关系数据库正在通过扩展对其他数据模型的支持转变为多模型数据库。
IBM Lotus Domino
Lotus Domino服务器和数据库拥有多层次的安全性，包括从服务器访问到针对独立数据库、文档、部分文档或数据库范围内的行为。 Lotus Domino服务器可以提供多种服务。核心服务包括：Lotus Domino服务器的附加组件可以提供以下特性：Lotus Domino产品与Lotus Notes客户端产品使用相同版本号同步发布。参见Lotus Notes Versions.
图数据库
从图数据库中检索数据需要SQL之外的查詢語言，SQL是为了处理关系系统中的数据而设计的，因此无法“优雅地”处理遍历图。，没有一个像SQL那样通用的图查询语言，通常都是仅限与一个产品的。不过，已经有一些标准化的工作，使得Gremlin、SPARQL和Cypher成为了多供应商查询语言。除了具有查询语言接口外，还可以通过应用程序接口（API）访问一些图数据库。
HSQLDB
另一种表类型是缓存型，它允许以降低性能为代价，存储千兆字节的数据。HSQLDB引擎只加载部分数据，在事务提交时将数据同步到磁盘。然而，在更新内存数据时，引擎总是会加载所有受影响的行。因此，如果不将其分成很多小任务就不可能实现大的更新。
并发控制
数据库管理系统（DBMS）中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。下面举例说明并发操作带来的数据不一致性问题： 产生这种情况的原因是因为两个事务读入同一数据并同时修改，其中一个事务提交的结果破坏了另一个事务提交的结果，导致其数据的修改被丢失，破坏了事务的隔离性。并发控制要解决的就是这类问题。
数据库管理系统
"数据库管理系统"（，缩写：） 是一种针对对象数据库，为管理数据库而设计的大型电脑软件管理系统。具有代表性的数据管理系统有：Oracle、Microsoft SQL Server、Access、MySQL及PostgreSQL等。通常資料庫管理師會使用資料庫管理系統來建立資料庫系統。
关系键
候选键的重要性是它们能够在关系中唯一标识出不同的元组，因此超键也是在设计数据库模式时需要指定的最重要的约束之一。由于在关系模型中，每个关系都是一个集合（没有重复的元素），所以每个关系都至少有一个候选键（因为所有属性组合必然是个超键）。但是在某些关系型数据库中表也能代表多重集，所以在每个关系中都显式地定义至少一个候选键是一条很重要的设计原则。数据库管理系统通常都需要将每个关系中的某个候选键定义为主键，亦即这个候选键是区分不同元组时首选的识别方式，例如外键通常就是引用主键而非其他候选键。
分布式数据库
分布式数据库的基本特点包括：物理分布性、逻辑整体性和站点自治性。从这三个基本特点还可以导出的其它特点有：数据分布透明性、按既定协议达成共识的机制、适当的数据冗余度和事务管理的分布性。
键-值存储
键-值数据库（Key–value database），或键-值存储，是设计用来存储、检索和管理关联数组的数据存储范式，关联数组是现今更常称为“字典”或散列表的一种数据结构。字典包含对对象或记录的一个收集，依次、记录内有多个不同的“域”或称字段，再次、每个字段都包含数据。这些记录使用唯一标识这个记录的“键”来存储和检索，键还用来在数据库中快速的找到数据。
关系键
主键，又称主码（）。数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的鍵。一个数据表只能有一个主键，且主键的取值不能缺失，即不能为空值（Null）。
Microsoft Access
一些專業的應用程式開發人員使用Access內附的快速應用開發功能，特別是給街道上的推銷員製作一個初型或獨立應用程式的工具。可是如果是透过網路存取數據的話，Access的可擴放性並不高．因此當程式被較多使用者使用時，他們的選擇多會是傾向於一些客戶端-伺服器為本的方案，例如Oracle、IBM DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB，或者Filemaker。無論如何，不少Access的功能（表單，報告，序列和VB代碼）可以用作其他數據庫的後期應用，包括JET（檔案為主的數據庫引擎，Access預設使用）、Microsoft SQL Server、Oracle和任何其他跟ODBC相容的產品。這種方法允許開發者把一個成熟的應用的數據移動到一台更大功率的伺服器而不會在適當的位置犧牲發展。
关系数据库
表（關聯Relation）是以行（值組Tuple）和列（屬性Attribute）的形式组织起来的数据的集合。一个数据库包括一个或多个表（關聯Relation）。例如，可能有一个有关作者信息的名为authors的表（關聯Relation）。每列（屬性Attribute）都包含特定类型的信息，如作者的姓氏。每行（值組Tuple）都包含有关特定作者的所有信息：姓、名、住址等等。在关系型数据库当中一个表（關聯Relation）就是一个关系，一个关系数据库可以包含多个表（關聯Relation）
Java数据库连接
优点： 缺点
Stata
Stata的一系列功能包括：数据管理，统计分析，图表，模拟，自定义编程。
MyBatis
与其他对象关系映射框架不同，MyBatis没有将Java对象与数据库表关联起来，而是将Java方法与SQL语句关联。MyBatis允许用户充分利用数据库的各种功能，例如存储过程、视图、各种复杂的查询以及某数据库的专有特性。如果要对遗留数据库、不规范的数据库进行操作，或者要完全控制SQL的执行，MyBatis是一个不错的选择。
数据库营销
数据库营销在欧美国家的市场营销实践中已相当普及。美国85%的零售商和制造商认为一个强大的营销数据库来支持他们的营销活动，以增强竞争力。2003年，美国数据库营销专家唐·E·舒尔兹在清华大学演讲时说： 例如在电信行业，用户基数成长到海量规模时，与客户的沟通通过信函、电话、电子邮件就难以解决了，而利用数据挖掘技术就能从海量的数据中找出最易流失的客户，并利用营销工具对其加强沟通来维持他们的品牌忠诚度。
数据库转储
数据库转储是一种包含了数据库或特定表格中所有数据的文件，一般是一系列SQL语句，数据库损坏后可以用它恢复数据库。通常可以通过分析转储来恢复损坏的数据库。
时间数据库
快照数据库中无法表示属性与时间的关系，没有维护状态变迁的能力，不能够进行与时间相关的任何工作，快照数据库无法回答以下一些问题。快照数据库状态之间转变的确切时刻是发生在Commit的时刻。这种数据库称为“快照数据库”，意思是它只把握数据库的当前的一个快照状态，“快照”状态是随着时间在不断改变的。这里所说的“快照”和关系数据库中的“快照”的概念不同：关系数据库中快照是为了处理的需要（比如年底结帐的需要）对某个时刻（12月31日23时59分59秒）数据库中的数据进行独立的数据备份。而这里使用的“快照”只是指数据库只保留一个数据库状态（通常是当前状态）的性质。 从时态数据库的观点来看，快照数据库不区分事务时间和有效时间。快照数据库中的基本假定是：存储在系统中的元组一定是现实世界中的有效事实。 回滚数据库(Rollback Database)支持事务时间，它按事务时间进行编址，保存过去每次事务提交，状态演变之前的状态。回滚数据库由三维的回滚关系组成，在属性维和元组维的基础上增加了事务时间维，因此可看作一个按时间编址的瞬象序列。每一个时间点都对应于一个二维快照数据库。 回滚数据库不足之处主要有下述几点： 快照数据库考察特定时刻下现实世界的一个状态，反应了某一个瞬间的情况。例如图1是一个快照数据库的例子。从表2可以知道Peter的一些基本信息。但是，对于 “Peter5年前是否为讲师？” 这样的问题，除非对数据表的结构进行特殊处理，否则将难以得到所需结果。为了解决此类问题，就需引入历史数据库。
数据库表
在关系数据库，数据库表，又稱表格，是一系列二维数组的集合，用来代表和储存数据对象之间的关系。表是构成表空间的基本结构，由区间构成。它由纵向的-{zh-hant:行;zh-hans:列;}-和横向的-{zh-hant:列;zh-hans:行;}-组成，例如一个有关作者信息的名为authors的表格中，每个-{zh-hant:行;zh-hans:列;}-包含的是所有作者的某个特定类型的信息，比如“姓氏”，而每-{zh-hant:列;zh-hans:行;}-则包含了某个特定作者的所有信息：姓、名、住址等等。
键-值存储
同更知名的关系数据库相比，键-值数据库以与之非常不同的方式工作。关系数据库把数据库中数据结构预定义为一系列的表，它们包含有着明确定义的数据类型的字段。这些数据类型暴露于数据库程序，从而允许它们应用某些优化。与之相对，键-值系统把数据当作一个单一的不透明的收集，对于每个记录都可以有不同的多个字段。这提供了可观的灵活性并更加紧密的遵循了现代概念如面向对象编程。不同于多数的关系数据库，由于不使用占位符或输入参数来表示可选值，键-值数据库经常比同等的关系数据库使用更少的内存。
数据库管理系统
資料庫管理系統是一套電腦程式，以控制資料庫的分類及數據的存取。一套資料庫包括：一個好的DBMS應該具有的特點應包括:
数据库事务
在启动事务后，数据库记录或对象会被锁定, 只读，或读写。然后才可以进行读写操作。一旦事务完全完成，变化就会被原子性地提交或回滚，这样在事务结束时就不会出现不一致的情况。
业务主键
在关系型数据库设计中，业务主键是一个由以及真实存在于世界中的属性构成的键。举例来说，一个美国公民的社会安全号码可以被用作一个业务主键。在其他的表达方式中，一个业务主键是和行内属性具有逻辑关系的候选键。
綱要 (資料庫)
SQL Server 2005 中，架构独立于创建它们的数据库用户而存在。多个用户可以共享一个默认架构进行统一的名称解析。 删除数据库用户不需要重命名该用户架构所包含的对象。完全限定的对象名称现在包含四部分：server.database.schema.object。如果未定义DEFAULT_SCHEMA 选项设置和更改默认架构，则数据库用户将把 DBO 作为其默认架构。
TiDB
TiDB可以通过添加新节点来扩展SQL处理和存储容量。这使得基础设施容量的扩展更加容易和灵活，而传统的关系数据库只能垂直扩展。
数据库营销
数据库营销旨在建立互信共赢的客户关系，数据库服务过程本身即可视为数据库营销过程。数据库的数据必须是动态的，可扩充的和及时更新的，涵盖现有客户和潜在客户。
时间数据库
在时态系统中，通常考虑得是时间元素的一个集合，而且根据实际应用情形，需要讨论时间元素集合的特定语义，根据应用中实际要求，通常需要研究用户定义时间维度、有效时间维度和事务时间维度等三种基本语义情况。 用户自定义时间（User-defined Time）是用户根据自身需要或理解而定义的时间，这种时间的属性值一般是时间点，其语义由用户本身予以解释。系统通常将基于用户定义时间的时间域与其他一般属性域等同看待，相应操作与对普通字符串操作没有本质差别。例如，“生日”可能不是一种标准数据类型，但用户可以根据需要定义一个具有“生日”数据类型的属性，相应元组中对应的该属性的值为“1985-10-21”，那么这就是一种用户自定义时间。系统通常不会对其进行特别处理，用户自定义时间的提供和更新都由用户自身完成。 在传统数据库系统中，系统通常都支持用户自定义数据类型，允许用户在原有系统数据类型的基础上建立自身所需要的数据类型，其中也包括用户子定义时间数据类型。在创建或更新数据时，用户自定义数据类型和其他标准数据类型一样被用户使用。与传统数据库系统情形类似，时态数据库系统不对用户自定义时间进行任何特殊处理，不提供专门的语言支持。用户自定义时间值完全依赖于实际应用，由用户和系统以常规方式存取。  有效时间（Valid Time）是指一个对象（事件）在现实世界中发生并保持的那段时间，或者该对象在现实世界中为真的时间。 有效时间可以是单一的时间点，单一的时间区间，或者是时间点的有限集合或时间区间的有限集合，或者是整个时间域。也就是说，一条记录的属性取值可以在任意的时间点，任意的时间区间内为真。与用户自定义时间不同，当查询语句被检测到存在有效时间时态语义时，相应有效时间通过数据库系统进行解释。有效时间可以被更新，有效时间的创建和更新由用户自身完成。 有效时间有如下两个主要特点： 支持有效时间数据库通常称为历史数据库（Historical Database）。历史数据库记录现实世界在有效时间点处或有效时间期间内的事件和状态变化。有效时间对事物的描述简洁直观、容易理解。表1是一个有效时间的例子。
空值 (SQL)
数据库表主键的取值不能为空值。另外，数据库中的统计计算，一般将有空值的数据忽略不计。EF Codd 在一篇 1975年的ACM - SIGMOD FDT報告的論文中提到了空值作為表示關係模型中缺失數據的一種方法。Codd最常被引用的與Null語義相關的論文（如 SQL中所採用的）是他 1979年在 ACM Transactions on Database Systems上發表的論文，其中他還介紹了他的 Relational Model/Tasmania，儘管其他許多提議後面的文章一直很模糊。1979年他的論文2.3節詳細描述了空值在做算術運算時散播的語義，以及比較空值時使用三值（三元）邏輯的比較；他還詳細說明了對其它集合操作的空值處理（後者目前仍存在爭議）。在數據庫理論界，Codd最初的建議（1975,1979）現在被稱為“Codd tables”。 Codd後來強化了他的要求，即在 "ComputerWorld"雜誌上發表的一篇 1985年由兩部分組成的文章中，所有 RDBMS都支持 Null來表示缺失的數據。
关系型数据库管理系统比较
数据库系统所能实现的基本功能对比。
数据库连接
一旦连接建立，它可以被打开、关闭、设置性质。
连接
通常会对关系数据库进行规范化，以消除重复信息，例如实体类型具有一对多关系时。例如，一个部门可能与许多雇员相关联。将部门和员工的单独表连接起来，可以有效地创建另一个表，将两个表中的信息组合在一起。
数据库连接
数据库连接(database connection)是数据库服务器与客户端之间的通信联系。客户通过数据库连接发送命令、接收服务器返回的结果。
数据库管理系统
现代DBMS使用不同的数据库模型追踪实体、属性和关系。在个人电脑、大型计算机和主机上应用最广泛的数据库管理系统是关系型DBMS（relational DBMS）。在關係型數據庫中，用二维表格表示数据库中的数据。这些表格称为关系。
Indexed Database API
IndexedDB可以用于浏览器内实现的功能，例如书签，以及Web应用程序，如电子邮件。索引数据库API的一个开源参考实现已经出现（用于测试和实验目的）。
时间数据库
双时态关系的一种实现方法就是组合回滚数据库和历史数据库成为新的数据库。 图3是一个元组的四个历史数据库中的有效时间片断组合。我们只是在原来的三维结构的基础之上加了第四维有效时间维，使得数据库变为四个维结构，元组维和属性维与原来无异，故不在此给出。
面向文檔的數據庫
文档数据库与传统的关系数据库差异显著。关系数据库通常将数据存储在相互独立的表中，这些表由程序开发者定义，一个单一的对象可能散布在若干表中。 对于一个给定对象，文档数据库将其所有信息存储在数据库内某个单一实例中，并且存储的每一个对象可以不同于任一其它对象。这简化了将对象装载入数据库的过程，通常能消除对对象关系映射等类似方案的需求。文档数据库不同于关系数据库，关系数据库基于了关系模型，而文档数据库采用了，没有在数据和模式（schema）之间的分离，使用的结构的数量依赖于目标用途。在半结构化数据中，属于相同类的实体可有不同的，即使它们被分组在一起，并且属性的次序是不重要的。
数据库管理员
数据库管理员（，簡稱DBA），是负责管理数据库的人。数据库管理员负责在系统上运行数据库，执行备份，执行安全策略和保持数据库的完整性。因为管理数据库是个很庞大的职务，每个公司或组织的数据库管理员的需要也是很不同。一个大公司可能有很多数据库管理员，但是一个小公司可能也没有数据库管理员，而让系统管理员管理数据库。
面向文檔的數據庫
面向文档的数据库是NoSQL数据库的主要类别之一，且“面向文档的数据库”一词的普及程度也因术语NoSQL的使用而有所增长 。是针对XML文档做了优化的面向文档的数据库的子类。图数据库与之相似，但其添加了一个连接各文档的“联系”层，以便进行快速遍历。一些搜索引擎（也称为信息检索）系统如Elasticsearch提供了足够的对文档的核心操作从而已经满足了面向文档数据库的定义。
HSQLDB
HSQLDB (Hyper SQL Database)是一个用Java编写的关系数据库管理系统。它有一个JDBC驱动程序并且支持一个SQL-92和SQL:2008标准的较大子集。它提供了一个快速轻量级的数据库引擎，该数据库引擎提供基于磁盘和内存的表。有两种模式：嵌入式和服务器模式可供使用。
键-值存储
另一个键-值数据库的例子是Oracle NoSQL Database。Oracle NoSQL 数据库向应用开发者提供了键-值范式。每个实体（记录）都是键-值对的一个集合。键有多个成员，并指定为有序列表。主键标识了这个实体，并构成了这个键的前导成员。后续成员叫做次键。这种组织类似于在文件系统中的目录路径规定（例如：/Major/minor1/minor2/）。键-值对的“值”部分简单的就是不加解释的任意长度的字符串。
PostgreSQL
通过函数，可以在数据库服务器端执行指令程序。尽管这样的指令程序可以使用基本的SQL语句写成，但是由于其缺乏流程控制等功能，所以在PostgreSQL中引入了使用其它程序语言编写函数的能力，包括：以上部分的语言，甚至可以在触发器内执行。PostgreSQL支持行返回函数：它们的输出是一系列行类型数据的集合，可以在查询中当作表来使用。函数也可以被定义成以创建者或者调用者的身份运行。在某些场合，或者其他的数据库产品中，函数也会被称为“存储过程”，但技术上这两者并未有太大分别。
关系数据库
外模式用来描述用户看到的或使用的部分的数据的逻辑结构，用户根据外模式用户数据操作语句或者程序操作数据库中的数据。  又称逻辑模式，是数据库中全部数据的逻辑结构和特征的描述。  内模式对应于物理机器的数据库，是三层模式中最底层的表示，描述数据在存储介质上的存储方式和物理结构。
K-匿名性
在"k"-匿名化问题中，一个数据库是指一个"n"行"m"列的表。表格的每一行表示一条记录，对应一组对象中的一个。不同行中的记录可以相同。每列中的值代表对象的一个属性。下表是一个未经匿名化操作的数据库，其中包含一些虚构医疗数据。
Ad hoc
许多应用软件系统都有一个潜在的、只能通过有限的请求和报告才能访问的数据库。通常是通过一些特定的菜单进行访问，并且已经被程序专家细心设计过、预先编制好并且做过性能优化。
分布式数据库
分布式数据库按照各站点中数据库管理系统的数据模型的异同分为异构型分布式数据库和同构型分布式数据库，按照控制系统的类型分为全局控制集中性、全局控制分散型和全局控制可变型。由于分布式数据库的结构特性，根据分布式系统的CAP定理，实现ACID事务需要付出很大的成本来维护可用性，所以为了保障可用性而总结出一套弱化的事务特性： 简称BASE，与ACID相对应（acid为“酸”的英文名称，base为“碱”的英文名称）。
关系型数据流管理系统
关系型数据流管理系统（RDSMS）是一种分布式的、基于内存的  (DSM)，目的是使用标准 SQL 查询来实时处理结构化和非结构化数据流。 不像在关系型数据库中执行 SQL 查询，返回结果并退出，在RDSMS中执行的 SQL 不会退出，当新数据可用时能够连续产出查询结果。RDSMS中的连续 SQL 查询通过窗口功能，在固定窗口或者切片窗口解析、关联和聚合数据流。 窗口可以被指定为基于时间的或基于行的。
数据库
所謂「資料庫」是以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。一个数据库由多个表空间（Tablespace）构成。
SQLite
SQLite遵守ACID，实现了大多数SQL标准。它使用动态的、弱类型的SQL语法。它作为嵌入式数据库，是应用程序，如网页浏览器，在本地/客户端存储数据的常见选择。它可能是最广泛部署的数据库引擎，因为它正在被一些流行的浏览器、操作系统、嵌入式系统所使用。同时，它有许多程序设计语言的语言绑定。
SQLAlchemy
SQLAlchemy提供为高效和高性能数据库访问而设计的，适配入简单和Python式领域语言中的，全套的周知的企业级模式。SQLAlchemy的理念是：关系数据库表现得不太像对象搜集，因为体量和性能开始成为关切；而对象搜集表现得不太像表格和行，因为更多的抽象被设计入其中。因此，SQLAlchmey采用了类似于Java里Hibernate的数据映射器模式，而不是其他ORM框架采用的主动记录模式。不过，通过可选插件可以让用户使用声明式语法。
面向文檔的數據庫
面向文档的数据库（）或文档存储，是用于存储、检索和管理面向文档的信息的一种计算机程序。这里称为文档的是，它是不完全形式的结构化数据，不服从于与关系数据库或其他形式的数据表有关联的数据模型的形式结构，然而却包含标签或其他标记，用以在数据内分割语义元素和强制记录和字段的层级，因此它也叫做自我描述结构。
数据库
另外，索引跟欄位有著相應的關係，索引即是由欄位而來，其中欄位有所謂的關鍵欄位（Key Field），該欄位具有唯一性，即其值不可重複，且不可為"空值（null）"。例如：在合併資料時，索引便是扮演欲附加欄位資料之指向性用途的角色。故此索引為不可重複性且不可為空。