#asp.net #c #excel #datatable #oledb
#asp.net #c #excel #datatable #oledb
Вопрос:
Чтобы ускорить работу моего приложения, я пытаюсь получить строку, в которой столбец ‘Vertical_num’ соответствует заданной строке.Приведенный ниже код
using (OleDbConnection connection = new OleDbConnection(con))
{
connection.Open();
OleDbCommand command = new OleDbCommand("Select * from [All Verticals$] where Vertical_num ='" t "'", connection);
OleDbDataAdapter da = new OleDbDataAdapter(command);
DataSet ds = new DataSet();
System.Data.DataTable dt1 = new System.Data.DataTable();
da.Fill(dt1);
for (int i=0;i<dt1.Rows.Count;i )
{
Console.Out.WriteLine(dt1.Rows[i].ItemArray[2].ToString());
}
connection.Close();
}
Он выводит требуемое значение, когда значение в столбце моего файла Excel равно 1000_1, но когда значение в столбце равно 10001, возвращается «Исключение несоответствия типа данных»
Как я могу изменить свой запрос, чтобы он соответствовал всем типам значений ячеек?
Тип моего столбца Excel — общий, я изменил его на текст, но была возвращена та же ошибка.