日期:2014-05-18  浏览次数:20898 次

c#操作oracle,有没有类似sqlhelp之类的通用操作类
自己写怕有遗漏环节,请教下大家,你们以前做oracle数据库的时候,数据库操作层都是怎么做的。
有么有用通用的操作类工具来生成类语句呢?谢谢了。

------解决方案--------------------
sqlhelp 就可以应用 在 oracle 中啊
------解决方案--------------------
当然,现关的 ado.net 对象 要换成 oracle 对应的
------解决方案--------------------
其实都一样,添加System.Data.OracleClient引用

把sqlhelp中的SqlConnection,SqlCommand什么的改成OracleConnection,OracleCommand.

就行了,大部分对象用途都差不多,,小改下就可以了。。

------解决方案--------------------
C# code
 
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Data.OracleClient;
using CommLB.wmj.AllExceptionsCatch.ExceptionObjs;

namespace CommLB.wmj.AllDataProdivers.Command
{
  /// <summary>
  /// OracleDataProvider 的摘要说明
  /// </summary>
  internal class OracleDataProvider : CommLB.wmj.AllDataProdivers.CommandOfInterface.IDataProvider
  {
    private System.Data.OracleClient.OracleConnection oracleConnection;
    private System.Data.OracleClient.OracleCommand oracleCommand;
    private string connectionString;
    public OracleDataProvider()
      : this(null)
    {
      //
      // TODO: 在此处添加构造函数逻辑
      //
    }

    public OracleDataProvider(string connectionString)
    {
      if (connectionString == null || connectionString.Trim() == string.Empty)
      {
        System.Configuration.AppSettingsReader configurationAppSettings = new System.Configuration.AppSettingsReader();
        this.connectionString = (string)(configurationAppSettings.GetValue("oracleConnectionString", typeof(string)));
      }
      else
      {
        this.connectionString = connectionString;
      }
    }

    /// <summary>
    /// Oracle 连接字符串 "User Id=southfence;Data Source=FENCEORA;Password=southfence;Persist Security Info=true;" 
    /// </summary>
    public string ConnectionString
    {
      get
      {
        return this.connectionString;
      }
      set
      {
        this.connectionString = value;
      }
    }

    /// <summary>
    /// 返回一个带有连接字符串的Oracle Connection.
    /// </summary>
    /// <returns>OracleConnection </returns>
    private OracleConnection GetOracleConnection()
    {
      try
      {
        return new OracleConnection(this.connectionString);
      }
      catch (Exception ex)
      {
        throw ex;
      }
    }

    /// <summary>