微软的数据库平台,我在大学时只是耳闻,并没有真正地用过。听说过 Office 里的几大件,最常用的是 Word、Excel、PowerPoint,而接下来的就是数据库:Access。曾在工作中用过一次,发现它的 SQL 语言支持没有 SQL Server 好用,因此后来就基本没用过。
然后工作以后,接触到了微软的拳头产品 SQL Server。Microsoft SQL Server 2000 有多个不同子版本,企业版,开发版,标准版,个人版(随企业版附送,不零售),是我见到过的几个版本。这几个版本间主要的区别就是容量限制不同以及连接数限制不同。后来,在开源软件日益众多的市场环境下,微软也推出了好几个免费版本,包括 MSDE(Microsoft SQL Server 2000 Desktop Engine)、以及后来的 SQL Server 2005 Express 等等。SQL Server Express 推出的同时还有好多管理工具和功能增强工具的 Express 版本,比如 SQL Server 2005 Management Studio Express 等等。这个系列可以被看作是 SQL Server 大家族,其基本的语法、管理工具都能通用(高版本的管理工具可以管理低版本的数据库引擎)。
2009 年的一次偶然的搜索,想找找有什么应用程序内嵌的数据库。这方面最有名的当属开源的 SQLite 了。这且不表,还搜到一个微软的:ESENT.dll(称为 JET Blue,是当年 JET Red 也就是 Access 的一个分支)。它也是数据库引擎,可以通过 dll 直接链接,可以通过程序接口进行数据查询,但是不提供 client/server 方式访问以及 SQL 语言支持。虽然很少看到第三方的软件用到它,但它的确是存在于自 Windows 2000 开始的每个版本的 Windows 里面的,而且有不少微软自己的软件用到它。
今年(2011 年),就在前两天,我发现微软还有一个数据库。而且隐约记起当初见微软自己的产品用到过,就是 SQL Server Compact。它也同样很简单,用 dll 链接,但是相对于 ESENT.dll 来说,它支持 SQL 语言。因此用起来肯定比 ESENT 方便。暂时还不知道它的 dll 的再分发的版权条款是怎样规定的。