2012-04-27 110 views
0

我有一个问题,当I M运行我的代码然后错误发生的是“” System.Data.OleDb.OleDbException:数据类型不匹配条件表达式中。 “”。 和数据类型是Number。数据类型不匹配,在c#

PLZ建议我关于该。

代码

protected void btn_Save_Click(object sender, EventArgs e) 
    { 
     string str = ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:/Users/Geeta/Desktop/eTimeTrackLite1.mdb;Persist Security Info=False;"); 
     OleDbConnection conn = new OleDbConnection(str); 
     conn.Open(); 
     string query = "insert into Employees (EmployeeName,EmployeeCode,Designation,Grade,Team,Location,EmployementType,HolidayGroup) values ('" + txt_empname.Text + "','" + txt_code.Text + "', '"+ Convert.ToString(dp_designation.SelectedItem)+"', '"+Convert.ToString(dp_grade.SelectedItem)+"', '"+Convert.ToString(dp_team.SelectedItem)+"', '"+Convert.ToString(dp_location.SelectedItem)+"', '"+Convert.ToString(dp_emptype.SelectedItem)+"', '"+Convert.ToString(dp_holigroup.SelectedItem)+"')"; 
     OleDbCommand cmd = new OleDbCommand(query, conn); 
     cmd.ExecuteNonQuery(); 
     conn.Close(); 
     BindGridData(); 
    } 

‘谢谢’

回答

1

你把字符串作为值在您的插入startement和一些您的分贝值不是字符串类型,这导致错误。

看看你的表定义和INSERT语句中的参数转换为正确的类型。