public class DataAccess
{
static OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.Oledb.4.0;Data Source=" + System.Web.HttpContext.Current.Server.MapPath(@"~/App_Data/B2C.mdb"));    public static DataSet getOleServerData(string sqlstring)
    {
        OleDbDataAdapter adapter = null;
        DataSet ds = new DataSet();
        try
        {
            conn.Open();
            adapter = new OleDbDataAdapter();
            adapter.SelectCommand = new OleDbCommand(sqlstring, conn);
            adapter.Fill(ds);
        }
        finally
        {
            conn.Close();
        }
        return ds;
    }
}protected void btLogon1_Click(object sender, EventArgs e)
    {
                    DataSet ds = DataAccess.getOleServerData(@"SELECT C-Password, C-Name FROM CUSTOMER WHERE C-Email LIKE '" + TextBox2.Text + "'");
            GridView1.DataSource = ds.Tables[0];
            GridView1.DataBind();
    }
运行后出错:至少一个参数没有被指定值。是怎么回事?

解决方案 »

  1.   

    你SQL语句写了没哦     sqlstring
      

  2.   

    说的是你的SQL语句出错呢,你那个数据列的名称有问题,改为下划线吧
      

  3.   

    不一定是SQL语句的问题。看看拼出来的连接字符串对不对
      

  4.   

    DataSet ds = DataAccess.getOleServerData(@"SELECT C-Password, C-Name FROM CUSTOMER WHERE C-Email LIKE '" + TextBox2.Text + "'"); 红色部分去掉
      

  5.   

    C-Password等用方括号括起来,[C-Password],字段名最好不要有减号,换成下划线