0
У меня есть таблица, а один из столбцов IsActive, и все значения равны 1 (тип данных данных в Excel). В SQL Server таблица, в которую она вставлена, имеет бит тип данных для IsActive. Тем не менее, ошибка, которую я получаю при попытке вставить данныеИмпорт небольшого типа из таблицы Excel в SQL Server
The given value of type String from the data source cannot be converted to type bit of the specified target column.
Есть ли тип данных в Excel, которые будут совместимы с битом в SQL Server?
excelConnection.Open();
using (OleDbDataReader dReader = cmd.ExecuteReader())
{
using (SqlBulkCopy sqlBulk = new SqlBulkCopy(strConnection))
{
//Give your Destination table name
sqlBulk.DestinationTableName = "Medicine";
sqlBulk.WriteToServer(dReader);
}
}
EDIT: Вот команда OleDB
using (OleDbCommand cmd = new OleDbCommand("Select ...[IsActive]... from [Sheet1$]", excelConnection)
я, очевидно, не хотят, чтобы строка IsActive для вставки в битовый столбец.
Это из-за имени столбца IsActive подбирается как строка? –
Я бы так подумал, попробуйте преобразовать в бит или логически явно. – Anand