有一条sql语句:select a.* ,b.* from tableA a inner join tableB b on a.id=b.id,
小弟先想将这跳语句的查询结果存入一个dataset中,通过一个datagrid显示出来,
如果有一个方法,返回值为dataset,参数不定,能实现以上所属,请问各位大虾,各位前辈,这样的一个方法应该怎么写?
小弟急切......

解决方案 »

  1.   

    不明白你的参数不定是什么意思,你可以把若干参数放到Hashtable里
    public DataSet GetDS(string sql,Hashtable ht)
            {
                conn.Open();//数据库连接
                DataSet ds = new DataSet();
                SqlDataAdapter da = new SqlDataAdapter();
                da.SelectCommand = new SqlCommand();
                da.SelectCommand.Connection = conn;
                da.SelectCommand.CommandType = CommandType.Text;
                da.SelectCommand.CommandText = sql;
                da.Fill(ds, "table");
                conn.Close();
                return ds;
            }
      

  2.   

    我没有对Hashtable进行操作,我不知道你的若干参数什么用,你自己改改吧
      

  3.   

    string sql="select a.* ,b.* from tableA a inner join tableB b on a.id=b.id"; SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
      
    SqlDataAdapter da=new SqlDataAdapter(sql,conn);
    DataSet ds=new DataSet(); conn.Open();  da.Fill(ds,"topic");
         
    return ds;突然发现,让我单独写一个返回DataSet 的方法,已经不会写了,只因现在用的是封装好的方法,基础不牢啊,找了几年前的写的程序,终于找出来了.
      

  4.   

    请问在你的这段代码中你的意思是将表名放入一个hashtable中,然后便利,da.Fill(ds, "table")中的table是把便利的表名一个一个Fill嘛?小弟初学c#不是很理解
      

  5.   


    这位大虾,次方法中的topic是什么意思啊?
      

  6.   


    不是,是把你要传的参数放到hashtable里,你不是说参数不定吗,取参数的时候,遍历hashtable取就可以了
      

  7.   

    方法中的topic是什么意思啊?topic是你随便写的表名,这个名自己随便起
      

  8.   

    问题解决了,小弟困惑了半天的问题,原来早就解决了,其实原来我是不知道这个topic的含义,原来是一个随便的值,想要用一个datagrid显示两个表的内容原来是sql语句的写法,还是感谢各位大虾