0

問題があります。コードを実行すると、"" System.Data.OleDb.OleDbException: Data type mismatch in criteria expression. というエラーが発生します。""。データ型は数値です。

それに関して私に提案してください。

"コード

 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();
    }

"ありがとう"

4

1 に答える 1

1

挿入開始時に文字列を値として配置し、db 値の一部が文字列型ではありません。それがエラーの原因です。

テーブル定義を調べて、insert ステートメントのパラメーターを正しい型に変換してください。

于 2012-04-27T05:39:59.993 に答える