«Несоответствие типов данных в выражении критериев» - PullRequest
0 голосов
/ 02 мая 2010

У меня проблема, когда я хочу вставить значения из текстовых полей в свою базу данных доступа! Когда я хочу сохранить, я получаю эту ошибку («Несоответствие типов данных в выражении критериев») Код:

    string conString = "Provider=Microsoft.Jet.OLEDB.4.0;"
        + "Data Source=C:\\Users\\Simon\\Desktop\\test5\\test5\\test5\\save.mdb";

    OleDbConnection empConnection = new OleDbConnection(conString);


    string insertStatement = "INSERT INTO aktivnosti_save "
                         + "([ID_uporabnika],[ID_aktivnosti],[kalorij]) "
                         + "VALUES (@ID_uporabnika,@ID_aktivnosti,@kalorij)";

    OleDbCommand insertCommand = new OleDbCommand(insertStatement, empConnection);

    insertCommand.Parameters.Add("@ID_uporabnika", OleDbType.Char).Value = textBox3.Text;
    insertCommand.Parameters.Add("@ID_zivila", OleDbType.Char).Value = iDTextBox.Text;
    insertCommand.Parameters.Add("@kalorij", OleDbType.Char).Value = textBox2.Text;
    empConnection.Open();

    try
    {
        int count = insertCommand.ExecuteNonQuery();
    }
    catch (OleDbException ex)
    {
        MessageBox.Show(ex.Message);
    }
    finally
    {
        empConnection.Close();
        textBox1.Clear();
        textBox2.Clear();   
    }
}  

1 Ответ

0 голосов
/ 28 апреля 2012

вы можете использовать конкатенацию строк в (string insertStatement =) вместо

insertCommand.Parameters.Add("@ID_uporabnika", OleDbType.Char).Value = textBox3.Text;

Вы можете написать в качестве примера:

string insertStatment = "INSERT INTO aktivnosti_save "
                     + "([ID_uporabnika],[ID_aktivnosti],[kalorij]) "
                     + "VALUES ('"+textbox1.text+"','"+textbox2.text+"','"+textbox3.text+"')";

попробуйте это и дайте мне знать о любой дальнейшей проблеме. ты мы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...