有部分场景,使用 DmProvider 时需要注册.NET 驱动,例如通过 DbProviderFactories 类
调用 DmProvider 创建连接,NHibernate 及 EFDmProvider 的使用,都需要注册.net 驱动。下
面详细介绍下如何注册.NET 驱动。
步骤如下:
1、注册 DmProvider。
gacutil /if E:\dmdbms\drivers\dotNetProvider\DmProvider\DmProvider.dll
2、修改对应框架的配置文件 machine.config。
例如,配置文件 machine.config 目录位于 C:\Program Files\Microsoft Visual Studio
10.0\VC>notepad %WINDIR%\Microsoft.NET\Framework\v2.0.50727\config\machine.config。
在配置文件 machine.config 中添加以下内容:
... <DbProviderFactories> <add description="DM .Net Framework Data Provider" invariant="Dm" name="DM Data Provider" type="Dm.DmClientFactory, DmProvider, Version=1.1.0.0, Culture=neutral, PublicKeyToken=7a2d44aa446c6d01"/> </DbProviderFactories> ...
例如,通过 DbProviderFactories 类调用 DmProvider 创建连接使用.NET 驱动的情况。
using System.Data.Common; ... public static void TestFunc() { DbProviderFactory factory = DbProviderFactories.GetFactory("Dm"); DbConnection sconn = factory.CreateConnection(); sconn.ConnectionString = "Server=localhost; UserId=SYSDBA; PWD=SYSDBA"; sconn.Open(); DbCommand scmd = factory.CreateCommand(); scmd.Connection = sconn; try { scmd.CommandText = "drop table t1 cascade;"; scmd.ExecuteNonQuery(); } catch (Exception) { } }
https://xpanx.com/
评论