Mego开发文档 - 数据库提供者

数据库提供者

Mego做为一个功能强大的ORM框架,同样也提供了对多个数据库的支持。我们使用了与其他ORM完全不同的方式以实现对多个数据库的支持。我们的理念是

ORM For Any ADO.NET Data Source

任何支持ADO.NET的数据源都可以使用Mego完成ORM的功能,只要满足下列两个条件就可以很快速的接入到Mego中来。

  1. 数据源支持ADO.NET访问。
  2. 数据源支持或部分支持基于SQL92标准的SQL语句访问。

对于Mego的开发者可以做到真正的无缝切换不同种类不同版本的数据库,而您不用修改任何代码,Mego保证了各个不同数据库实现的高度一致。但是这不是绝对的,例如您想从SQL Server切换到Oracle,但是您使用了标识列特性,由于Oracle中没有该功能。为了解决这个问题我们提出了数据库高级特性的概念,这就好像在DirectX开发中每个显卡都会有自己的Capability概念一样,Mego也是基于这个理念系统在执行特定操作时是需要当前数据库的拥有该能力才能执行成功的。

以下我们以.NETFramework开发为例说明下数据库从SQL Server切换到PostgresSQL数据库。只需要修改配置文件中的连接字符串及提供程序名。

<add name="OrderManage"
     connectionString="data source=.;initial catalog=OrderManagementDatabase;integrated security=True;MultipleActiveResultSets=True;"
     providerName="System.Data.SqlClient" />

切换

<add name="OrderManage"
     connectionString="Database=OrderManagementDatabase;Username=postgres;Password=qwer.1234;Host=localhost"
     providerName="Npgsql" />

这里提供程序名我们符合了ADO.NET的习惯一般为提供程序的根命名空间。不过可以在代码中手动强制指定。

下面列出Mego已经支持及未来将要支持的数据库及版本。

SQL Server

支持SQL Server 2005及后续版本。

MySQL

支持MySQL5.6及后续版本(MySQL5.5测试中)。

SQLite

支持SQLite 3。

SQL Server Compact

支持SQL Server Compact 4.0(未开放)。

PostgreSQL

目前正在开发PostgresSQL 9.3。

Oracle

Firebird

Access

Excel

Sybase

SAP HAHA

Informix

DB2

以上未声明的都是计划需要开发支持的数据库。

关于DB2、Informix、SAP HAHA这三种数据库由于官方或出口法规限制一直无法获取到试用版本或开发版本,希望有资源的朋友或者有更多数据库支持可以发邮件 carefreext@hotmail.com 给我。

[文档目录]

posted @ 2018-04-09 23:38  CarefreeXT  阅读(443)  评论(2编辑  收藏  举报