Ari*_*ule 1 c# asp.net ms-access
我试图根据特定的选择ID填充数据集,但得到错误
Data type mismatch in criteria expression.
Run Code Online (Sandbox Code Playgroud)
不完全确定为什么我有这个错误.
conn = new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;
Data Source =" + Server.MapPath("App_Data\\HarryPothead.mdb"));
conn.Open();
DataSet ds = new DataSet();
OleDbDataAdapter dba = new OleDbDataAdapter("SELECT * FROM [Person] WHERE [StatusIdFrn] = '" + statusID + "'", conn);
dba.Fill(ds, "PersonName");
DataTable dt = ds.Tables["PersonName"];
drpPerson.DataSource = ds.Tables[0];
drpPerson.DataTextField = "PersonName";
drpPerson.DataBind();
conn.Close();
Run Code Online (Sandbox Code Playgroud)
建议也许就如何克服这个问题.
我选择的数据库是一个Access数据库和我从三个字段中选择的表,PersonId是AutoNumber类型,PersonName是Text类型,StatusIdFrn是数据类型Number.(drpPerson是DropDownList控件) )
改变这个:
"SELECT * FROM [Person] WHERE [StatusIdFrn] = '" + statusID + "'"
Run Code Online (Sandbox Code Playgroud)
对此:
"SELECT * FROM [Person] WHERE [StatusIdFrn] = " + statusID + ""
Run Code Online (Sandbox Code Playgroud)
由于[StatusIdFrn]是数字,您需要丢弃单引号,因为它们表示文本类型.
归档时间: |
|
查看次数: |
5342 次 |
最近记录: |