Я продолжаю возвращать указанное приведение недействительно в строке int result = myDataReader.GetInt32(0);
при выполнении запроса с использованием параметра. Дело в том, что если я заменю @Reg текстом «WM07 OGR», все будет работать нормально. Однако строка reg возвращает это, так почему ошибка?
string reg = RadComboBox1.SelectedValue;
//prepare sql statements
Command = new OleDbCommand(@"SELECT MAX(Fuel.NO_ODOMETER_LAST) AS PrevMiles
FROM (Fuel INNER JOIN Vehicle ON Fuel.TX_VIN = Vehicle.TX_VIN)
WHERE (Vehicle.TX_VEHNUMBER = '@Reg')", conn);
Command.Parameters.AddWithValue("@Reg", OleDbType.WChar);
Command.Parameters["@Reg"].Value = reg;
myDataReader = Command.ExecuteReader();
if (myDataReader.Read())
{
int result = myDataReader.GetInt32(0);
Prev_Mileage.Text = result.ToString();
}
//cleanup objects
myDataReader.Close();
conn.Close();
''
вокруг параметра@Reg
в командной строке? - person   schedule 21.05.2014NO_ODOMETER_LAST
в базе данных? - person Tim Schmelter   schedule 21.05.2014