日期:2014-05-18  浏览次数:20737 次

求高手下面的代码老提示 至少一个参数没有被指定值
这是个c#操作access的例子  
C# code

            string str = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;
            OleDbConnection myCon = new OleDbConnection(str);
            myCon.Open();
            string listStr = listBox1.SelectedItem.ToString();
            string strSql = "select * from YG301 where (Name ='"+ listStr + "')";//这里如何参数化引用?
            OleDbDataAdapter da = new OleDbDataAdapter(strSql, myCon);
            DataSet ds = new DataSet();
            da.Fill(ds);//这里老提示  至少一个参数没有被指定值  如何修改?
            textBox3.Text = ds.Tables[0].Rows[0][2].ToString();
            textBox4.Text = ds.Tables[0].Rows[0][3].ToString();






------解决方案--------------------
DataSet 换 DataTable 试试
C# code
DataTable dtbl = new DataTable();
da.Fill(dtbl);

------解决方案--------------------
dataset是一个数据集,你执行一次查询出来的肯定是一个表 所以要dataadapter只能fill一个datatable,这样
datatable dt=new datatable();
da.fill(dt);
即可