myOleDbConnection=new OleDbConnection("Provider=OraOLEDB.Oracle.1;"+"Persist Security Info=False;"+"User ID=peixun;"+"password=peixun05;"+"Data Source=orc1");
OleDbDataAdapter mc5=new OleDbDataAdapter("select *  From pxry " , myOleDbConnection);
DataSet ds5=new DataSet();
mc5.Fill(ds5,"pxry");
DataRowView rowview5=ds5.Tables["pxry"].DefaultView[0];
int n=ds5.Tables["pxry"].Rows.Count;
DataGrid1.DataSource=ds5.Tables["pxry"].DefaultView;
DataGrid1.DataBind();
运行时在mc5.Fill(ds5,"pxry");出现错误:ORA-12154:TNS:无法处理服务名

解决方案 »

  1.   

    使用Oracle的 Net Manager 测试orc1网络服务名是否连接成功?
      

  2.   

    myOleDbConnection=new OleDbConnection("Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=peixun;password=peixun05;Data Source=orc1");//中间不要用那么多+
    myOleDbConnection.open();//要把连接打开
    OleDbDataAdapter mc5=new OleDbDataAdapter("select *  From pxry " , myOleDbConnection);
    DataSet ds5=new DataSet();
    mc5.Fill(ds5,"pxry");
    DataRowView rowview5=ds5.Tables["pxry"].DefaultView[0];
    int n=ds5.Tables["pxry"].Rows.Count;
    DataGrid1.DataSource=ds5.Tables["pxry"].DefaultView;
    DataGrid1.DataBind();
      

  3.   

    你用oracleclient连接吧string connstr = "Data Source=数据源名;user id=用户名;password=密码";
    string OracleConnection conn = new OracleConnection(connstr);
    conn.Open();
    sql = "select *  From pxry ";
    OracleDataAdapter myAdp = new OracleDataAdapter(sql, conn);
    DataSet dt = new DataSet();
    myAdp.Fill(dt);