在安装这些组件之前,将无法使用此提供程序。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 未找到 Oracle 客户端和网络组件。这些组件是由 Oracle 公司提供的,是 Oracle 8i 版 (或更高) 客户软件安装的一部分。在安装这些组件之前,将无法使用此提供程序。源错误: 
行 28:         strConnection = "Provider=MSDAORA.1;Data Source=orcl;User ID=mcc2;Password=mcc;";
行 29:         OleDbConnection conn = new OleDbConnection(strConnection);
行 30:         conn.Open();
行 31: 
行 32:         string a = "select * from mcc_track where UTC>1192791444 and UTC<1192794723";
 源文件: c:\Inetpub\wwwroot\wang\WebSiteUTC\Default.aspx.cs    行: 30 
    protected void btnSearch_Click(object sender, EventArgs e)
    {
        string strConnection ;
       
        strConnection = "Provider=MSDAORA.1;Data Source=orcl;User ID=mcc2;Password=mcc;";
        OleDbConnection conn = new OleDbConnection(strConnection);
        conn.Open();/?????????????????????????????        string a = "select * from mcc_track where UTC>1192791444 and UTC<1192794723";
        OleDbCommand cmd=new OleDbCommand(a,conn);
        cmd.CommandType=CommandType.Text;
        cmd.ExecuteNonQuery();        
    }

解决方案 »

  1.   

    1、未装ORACLE客户端
    2、如果已经装了客户端,还出现这个问题,那就是权限的问题,GOOGLE了一把,贴上来 
    ================================================================================ 
    最近做ASP.NET的项目,使用的数据库是Oracle9i。连接数据库是发生了错误,显示的信息如下: System.Data.OracleClient   需要   Oracle   客户端软件   8.1.7   或更高版本。   
    说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。   异常详细信息:   System.Exception:   System.Data.OracleClient   需要   Oracle   客户端软件   8.1.7   或更高版本。 真奇怪,明明已经是高于8.1.7版本了?怎么还不行。上网查才知道原因,唉!现在的NTFS分区真的是害死人啊。原来又是NTFS分区搞的鬼。正如同连接SQL   Server数据库一样,用户权限很重要,如果没有授权是无法正常操作的。Oracle   9i   Release   2   客户端在安装到Windows的NTFS分区下时的安全认证设置不正确,引起本机的Authenticated   Users用户无法看到ORACLE_HOME目录下的内容;   这导致在ASP.NET以Authenticated   Users权限使用System.Data.OracleClient连接Oracle数据库时报出以上错误。 
    要解决以上问题,只要给Authenticated   Users   组加上访问Oracle   Home目录的权限即可1、以Administrator权限登录Windows   2、启动Window   资源浏览器找到ORACLE_HOME目录,如C:\Oracle\ora92   3、右键弹出菜单,选择该目录共享与安全(Win2000下要点击属性)   4、点击   “安全”   页签   5、在组和用户名称列表中点击“Authenticated   Users”   项.   6、在该用户的权限列表中,将“读取和运行”的选择框置为不选中状态   7、再次点击“读取和运行”的选择框,将其设置为选中状态   8、点击“高级”按钮并在权限项目中确定“Authenticated   Users”   是否拥有“读取并运行”权限并应用于“该文件夹,及子文件夹和文件”.   如果不是,双击这样,并确保权限可以“应用于”   “该文件夹,及子文件夹和文件”.   该项非常重要你一定要核查.   9、点击“确定”   按钮   10、重启动,   以使得所有的修改生效. ============================================================================= 
    注意,权限设置好后,不用机器重启的,直接IIS重启下就行了,方法,开始-运行-CMD-IISRESET 
    另外注意,权限设置要应用到所有子目录