是专门做了优化。效率是使用ole db的200%

解决方案 »

  1.   

    以下是例子:
    using System;
    using System.Data;
    using System.Data.OleDb;
    using System.Net;
    using System.Data.OracleClient;
    namespace LZRL
    {
    /// <summary>
    /// CortrolData 的摘要说明。
    /// </summary>
    public class CortrolData
    {
    public CortrolData()
    {
    //
    // TODO: 在此处添加构造函数逻辑
    //
    }
    public DataSet ShowData(string StrSql)
    {
    OracleConnection MyConnect;
    DataSet MyDataSet;
    String Strconnect;
    OracleDataAdapter MyAdapter;
    Strconnect =System.Configuration.ConfigurationSettings.AppSettings["DNS"];
    MyConnect=new OracleConnection();
    MyDataSet=new DataSet() ;
    MyAdapter=new OracleDataAdapter(StrSql,Strconnect);
    try
    {
    MyAdapter.Fill(MyDataSet,"AddNews");
    return MyDataSet;
    }
    catch(Exception error)
    {
    throw(error);
    }
    finally
    {
    MyAdapter.Dispose();
    MyConnect.Dispose();
    MyDataSet.Dispose();
    }
    } public DataView ShowDataView(string StrSql)
    {
    OracleConnection MyConnect;
    DataSet MyDataSet;
    String Strconnect;
    OracleDataAdapter MyAdapter;
    Strconnect =System.Configuration.ConfigurationSettings.AppSettings["DNS"];
    MyConnect=new OracleConnection();
    MyDataSet=new DataSet() ;
    MyAdapter=new OracleDataAdapter(StrSql,Strconnect);
    try
    {
    MyAdapter.Fill(MyDataSet,"AddNews");
    return MyDataSet.Tables["AddNews"].DefaultView ;
    }
    catch(Exception error)
    {
    throw(error);
    }
    finally
    {
    MyAdapter.Dispose();
    MyConnect.Dispose();
    MyDataSet.Dispose();
    }

    } public void ExecuteSql(string StrSql)
    {
    try
    {
    OracleConnection MyConnect;
    OracleCommand MyCommand;
    String Strconnect;
    Strconnect =System.Configuration.ConfigurationSettings.AppSettings["DNS"];
    MyCommand =new OracleCommand();
    MyConnect =new OracleConnection(Strconnect);
    MyConnect.Open();
    MyCommand.Connection =MyConnect;
    MyCommand.CommandText=StrSql;
    MyCommand.ExecuteNonQuery ();
    }
    catch (Exception error)
    {
    throw(error);
    }


    } public bool GetUser(string Name, string PassWord)
    {
    OracleConnection MyConnect;
    OracleCommand MyCommand;
    String StrConn;
    String StrSql;
    OracleDataReader MyReader;
    StrConn=System.Configuration.ConfigurationSettings.AppSettings["DNS"];
    StrSql="SELECT * FROM T_CZRY WHERE UPPER(YHBM)='"+Name.ToUpper()+"' AND LOWER(KL)='"+PassWord.ToLower()+"' AND TYBJ='0'";
    MyConnect =new OracleConnection(StrConn);
    MyCommand = new OracleCommand(StrSql,MyConnect);

    MyConnect.Open() ;
    MyReader=MyCommand.ExecuteReader();
    if (MyReader.Read())
    return true;
    else
    return false;
    } public DataSet GetSjzd_Bind(string FieldName)
    {
    string StrSql;
    StrSql="SELECT XMNR,XMMC,YXJ,XMBM FROM T_SJZD WHERE XMMC='"+FieldName+"' AND SFKJ='Y' ORDER BY YXJ";
    OracleConnection MyConnect;
    DataSet MyDataSet;
    String Strconnect;
    OracleDataAdapter MyAdapter;
    Strconnect =System.Configuration.ConfigurationSettings.AppSettings["DNS"];
    MyConnect=new OracleConnection();
    MyDataSet=new DataSet() ;
    MyAdapter=new OracleDataAdapter(StrSql,Strconnect);
    try
    {
    MyAdapter.Fill(MyDataSet,"Table_Sjzd");
    return MyDataSet;
    }
    catch(Exception error)
    {
    throw(error);
    }
    finally
    {
    MyAdapter.Dispose();
    MyConnect.Dispose();
    MyDataSet.Dispose();
    }
        
    } public void UpdateOnLineTime(string UserName)
    {
    try
    {
    string StrSql;
    StrSql="UPDATE T_CZRY SET ZHFWSJ=SYSDATE,ZT='在线' WHERE UPPER(YHBM)='"+UserName.ToUpper()+"'";
    OracleConnection MyConnect;
    OracleCommand MyCommand;
    String Strconnect;
    Strconnect =System.Configuration.ConfigurationSettings.AppSettings["DNS"];
    MyCommand =new OracleCommand();
    MyConnect =new OracleConnection(Strconnect);
    MyConnect.Open();
    MyCommand.Connection =MyConnect;
    MyCommand.CommandText=StrSql;
    MyCommand.ExecuteNonQuery ();
    }
    catch (Exception error)
    {
    throw(error);
    }

    }
    }
    }
      

  2.   

    Using C#:
    using System.Data.OracleClient;Using VB.NET:
    Imports System.Data.OracleClient当然是直接优化,速度还没测试过。(推荐使用)