不知道这次写程序查询的结果总是为空
   public string strConn = ConfigurationManager.AppSettings["connString"].ToString() + HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dbPath"].ToString()) + ";";
    public int executNum(string strsql)
    {
        using (OleDbConnection conn = new OleDbConnection(strConn))
        {
            using (OleDbCommand cmd = new OleDbCommand(strsql, conn))
            {
                try
                {
                    conn.Open();
                    int rows = cmd.ExecuteNonQuery();
                    return rows;
                }
                catch (OleDbException e)
                {
                    throw new Exception(e.Message);
                }
                finally
                {
                    conn.Close();
                }
            }
        }
    }
    #region 管理员登录查询
   // public int adminlogin(string Parameter, string Table, string Para, string GetName)
   public int adminlogin(string Sqlstr)
    {
        string strsql = Sqlstr;
        int i = executNum(strsql);
        return i;
        //if (i < 0)
        //{
        //    return false;
        //}
        //else
        //{
        //    return true;
        //}
    }
    #endregion------------------以上为DB文件
 protected void Button1_Click(object sender, EventArgs e)
    {
          MyClass logins = new MyClass();
      //int checklogin= logins.adminlogin("kname,kPass", "KUser", "kname", "'" + Qxx + "' and kPass='" + PassW + "'");
     //   IDbHelper idbhelper = new DbHelperSQL();
          int checklogin = logins.adminlogin("Select * from YSK_user");
        Label1.Text = checklogin.ToString();
    }
刚开始有参数的总是为空,后来直接Select * from YSK_user,结果返回查询条数仍然为0,程序特简单,而且数据库连接都是对的,表,字段名也正确,数据库权限也没问题。请您帮帮忙,谢谢

解决方案 »

  1.   

    Select   *   from   YSK_user
    =========
    Select count(*) from YSK_user
      

  2.   

    ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1
      

  3.   


        Select   count(*)   from   YSK_user
    cmd.ExecuteScalar()
      

  4.   

    ExecuteNonQuery()是针对update,delete,insert而言的,不是对你的select而言的.
      

  5.   

       public DataSet getList(string Field, string Table)
        {
            using (OleDbConnection conn = new OleDbConnection(strConn))
            {
                DataSet ds = new DataSet();
                try
                {
                    string strsql = "select " + Field + " from " + Table;
                    conn.Open();
                    OleDbDataAdapter ODDA = new OleDbDataAdapter(strsql, conn);
                    ODDA.Fill(ds);
                }
                catch (OleDbException e)
                {
                    throw new Exception(e.Message);
                }
                finally
                {
                    conn.Close();
                }
                return ds;
            }
        }
    --------------------------
      DataSet dss = logins.getList("Uname,Upass", "Users");
                this.tryDataList.DataSource = dss.Tables["Uname"];
                this.tryDataList.DataBind();
    输出还是为空。疯了
      

  6.   

    把你的sql放到查询分析器里看到有数据吗.单步调试一下.
      

  7.   

     DataSet里的表名错了吧
      this.tryDataList.DataSource   =   dss.Tables["Users"];