2010-05-02 3 views
0

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

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

Это похоже на дубликат http://stackoverflow.com/questions/2731216/problems-by-inserting-values-from-textboxes – Thomas

+0

Являются ли они определенными символьными данными не числовыми? Включая поля ID ID_zivila и @ID_uporabnika? –

+0

@Thomas - Немного другой вопрос, но, похоже, принципиально та же проблема! –

ответ

-1

вы можете использовать конкатенации строк в (строка 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+"')"; 

попробовать это и дайте мне знать о каких-либо дальнейших проблем. u are

+0

Почему голос? –

Смежные вопросы