当前位置:数据库 > Oracle >>

Microsoft.Practices.EnterpriseLibrary连接Oracle

 
1、引用dll
安装后在安装目录下找到以下dll:
\
先复制到项目目录先,并引用。
2、配置连接数据库的配置文件
你可以利用程序配置,也可以生成一个空白文档手动配置。如图,
 
第一步,运行安装目录下EntLibConfig.exe:
 
\
 
第二步,选择blocks菜单配置数据库连接:
 
\
 
第三步,配置连接数据库,也可以直接File-save as保存为一个空config文件手动配置:
 
\
 
这里是保存一个空的配置进行手动配置,空配置如下:
 
[html]  
<configuration>  
    <configSections>  
        <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />  
    </configSections>  
    <dataConfiguration defaultDatabase="Connection String" />  
    <connectionStrings>  
        <add name="Connection String" connectionString="Database=Database;Server=(local)\SQLEXPRESS;Integrated Security=SSPI"  
            providerName="System.Data.SqlClient" />  
    </connectionStrings>  
</configuration>  
 
<configuration>
    <configSections>
        <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
    </configSections>
    <dataConfiguration defaultDatabase="Connection String" />
    <connectionStrings>
        <add name="Connection String" connectionString="Database=Database;Server=(local)\SQLEXPRESS;Integrated Security=SSPI"
            providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>手动配置,这里以oracle为例进行配置。如下:
 
[html]  
<?xml version="1.0"?>  
<configuration>  
  <configSections>  
    <!--添加配置企业库(1)-->  
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings,   
             Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />  
  </configSections>  
  <!--添加配置企业库(2)-->  
  <dataConfiguration defaultDatabase="Oracle.ConnectionString"/>  
  <!--添加配置企业库(3)-->  
  <connectionStrings>  
    <add name="Oracle.ConnectionString" connectionString="Data Source=数据库名;Persist Security Info=True;  
         User ID=用户名;Password=密码;Unicode=True" providerName="System.Data.OracleClient"/>  
  </connectionStrings>  
</configuration>  
 
<?xml version="1.0"?>
<configuration>
  <configSections>
    <!--添加配置企业库(1)-->
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, 
             Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
  </configSections>
  <!--添加配置企业库(2)-->
  <dataConfiguration defaultDatabase="Oracle.ConnectionString"/>
  <!--添加配置企业库(3)-->
  <connectionStrings>
    <add name="Oracle.ConnectionString" connectionString="Data Source=数据库名;Persist Security Info=True;
         User ID=用户名;Password=密码;Unicode=True" providerName="System.Data.OracleClient"/>
  </connectionStrings>
</configuration>
好了,这些准备工作完成了,下面看代码中如何使用吧。这里测试读取,当然其他的操作都一样。
 
[csharp]  
public class OracleSqlHelper  
{  
    private static Database db = null;  
  
    public static DataSet GetDataTable( string commandText)  
    {  
        try  
        {  
            DataSet resultDataSet = null;  
  
            db = DatabaseFactory.CreateDatabase();//建立数据库连接   
  
            resultDataSet =db.ExecuteDataSet(CommandType.Text, commandText);//执行   
  
            return resultDataSet;  
        }  
        catch (Exception ex)  
        {  
            return null;  
  
            throw ex;  
        }  
    }  
}  
  
public class OracleDataProvider  
{  
    public static DataTable  TestReadTable(string id)  
    {  
        DataTable dataTable = null;  
  
        try  
        {  
            string commandText = "select tu.name from tabUser tu";  
  
            DataSet resultTable = OracleSqlHelper.GetDataTable(commandText);  
  
            int table = resultTable != null ? resultTable.Tables.Count : 0;  
  
补充:软件开发 , C# ,
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,