Я использую код ниже, чтобы получить количество записей в базе данных, но почему-то не работает.Запрос, чтобы получить количество записей из базы данных MS Access
бросает мне ошибку:
Input string was not in a correct format.
conn.Open();
OleDbCommand cmd1 = new OleDbCommand();
cmd1.CommandText = "select count(*) from Orders_Description where (ItemCode=" + Convert.ToInt32(row.Cells[1].Value) + ") and (OrderId=" + Convert.ToInt32(txtOrderNo.Text) + ")";
int recordExists = Convert.ToInt32(cmd1.ExecuteScalar());
if (recordExists > 0)
{
//Insert command if record exists.
}
Каковы значения 'row.Cells [1] .Value' и' txtOrderNo.Text' точно? Что такое «CurrentCulture»? Отлаживайте свой код и рассказывайте нам. И всегда используйте [параметризованные запросы] (http://blog.codinghorror.com/give-me-parameterized-sql-or-give-me-death/). Этот тип конкатенаций строк открыт для [SQL Injection] (http://en.wikipedia.org/wiki/SQL_injection) атак. –
'row.Cells [1] .Value' и' txtOrderNo.Text' содержит целочисленные значения, а в базе данных также есть целое число –
Ваш комментарий не помогает вообще. Каковы эти значения ** точно **? Каковы типы столбцов «ItemCode» и «OrderId»? –