当前位置:编程学习 > C#/ASP.NET >>

asp.net如何实现对oracle的多个表联合查询,并显示结果

首先我,想再页面上建两个文本框,一个按钮,根据文本框的 输入值来点击按钮查询显示结果。
目前我把返回的值用dataset接受,然后用gridview绑定结果,你们觉得有问题吗?代码如下:
public DataSet GetDataSet(string name, string name1)
    {

        OracleConnection myCon = new OracleConnection();
        myCon.ConnectionString = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.20.98.149)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=bss)));User ID=bss;password=jiningbss";
        
        //myCon.ConnectionString = "Data Source=localhost;Initial Catalog=master;Persist Security Info=True;User ID=sa;Password=x111333";
        myCon.Open();

        string sqlstr = "select a.*,b.party_name,c.remarks  from  a,b,c where a.id=b.id(+) and b.id=c.id(+) and a.方案 like '"+name+"'and to_char(a.时间,'yyyymmdd')>='"+name1+"'";
        OracleCommand selectCMD = new OracleCommand(sqlstr, myCon);

        OracleDataAdapter custDA = new OracleDataAdapter();

        custDA.SelectCommand = selectCMD;
        DataSet custDS = new DataSet();
        custDA.Fill(custDS, "????");//请问这个地方填写什么?以前单表的时候我填写一个表名,现在多表了,如何填写?难道是custDA.Fill(custDS, "a","b","c");?
       
        myCon.Close();
        return custDS;
protected void Button2_Click1(object sender, EventArgs e)
    {
        string name = TextBox1.Text.ToString();
        string name1 = TextBox2.Text.ToString();

        DataSet ds = GetDataSet(name, name1);
        if (ds.Tables[0].Rows.Count > 0)
        {
            GridView2.DataSource = ds;
            GridView2.DataBind();
        }

        else
        { 


            Response.Write("<script>alert('没有结果!');</script>");
        }



    }


    }

 
请问如果那个FILL()地方需要填入什么,还有如果不用这种方法,还有其他好实现的根据条件多表查询,并显示结果吗?
--------------------编程问答-------------------- 你把你多表查询的结果返回一个DataTable 绑定就行了。 --------------------编程问答-------------------- 谢谢,目前已解决,直接就填一个值,去掉问号部分就可以了。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,