public static OleDbDataReader GStr(string sql)
{
myconn.Open(); 
mycmd = new OleDbCommand(sql, myconn); 
OleDbDataReader read= mycmd.ExecuteReader();
return read;
}我写了上面这个类,但不知在页面程序(.cs)中如何调用,页面程序中SQL语句是这样的
string sql = "select id,title,branch from News where id=56";
功能是想分别读取id,title,branch这3个字段记录的值到aid,atitle,abranch这3个文本变量中。
怎么做啊???大家也可以改改我这个类,实现功能就行。谢谢!!!

解决方案 »

  1.   

    返回OleDbDataReader这个对象string sql = "select id,title,branch from News where id=56";OleDbDataReader dr=类名.GStr(sql);
      

  2.   

    string sql = "select id,title,branch from News where id=56";
    OleDbDataReader odr = 类名.GStr(sql);
    if(odr.Read())
    {
        str1 = odr["id"].ToString();
        str2 = odr["title"].ToString();
        str3 = odr["branch"].ToString();
    }
    odr.Close();
      

  3.   

    接上
    if(dr.read())
    {
        aid=dr["id"].ToString();
        atitle=dr["title"].ToString();
        abranch =dr["branch "].ToString();
    }
      

  4.   

    还有一个问题是myconn怎么关闭呀,就是myconn.close()写在这个类的什么地方。。public static OleDbDataReader GStr(string sql)
    {
    myconn.Open(); 
    mycmd = new OleDbCommand(sql, myconn); 
    OleDbDataReader read= mycmd.ExecuteReader();
    return read;
    }
      

  5.   

    public static OleDbDataReader GStr(string sql)
    {
    myconn.Open(); 
    mycmd = new OleDbCommand(sql, myconn); 
    OleDbDataReader read= mycmd.ExecuteReader();
    myconn.close();
    return read;
    }
      

  6.   

    myconn.close();
    return read;这样不行,会报错的,连接对象关闭时,无法返回oledbdatareader
      

  7.   

    晕,datareader是必须保持连接的啊,怎么能这样搞呢
      

  8.   

    //自动关闭连接
    OleDbDataReader read= mycmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);