OleDb возвращает ошибку для varchar C#
уже 4ый день сижу с проблемой при попытке получить колонку, через OleDb для firebird (lcpi.data.oledb), с типом varchar(Любого размера) выкидывает исключение:
[LCPI.IBProvider.5] Ошибка получения данных колонки [номер: 1][STREET]. Статус: DBSTATUS_E_CANTCONVERTVALUE.
Код ошибки COM: DB_E_CANTCONVERTVALUE.
--------------------------------
2. [lcpi.data.oledb.OleDbDataReader] Чтение значения колонки "STREET" OLE DB набора рядов завершилось с ошибками. Индекс колонки: 0. Порядковый номер колонки: 1.
Код ошибки COM: DB_E_ERRORSOCCURRED.
--------------------------------
3. [lcpi.data.oledb.OleDbDataReader] Ошибка чтения значения колонки "STREET". Порядковый номер колонки: 1. OLE DB тип привязки: BYREF_WSTR. Размер буфера для значения: 4. Статус значения: E_CANTCONVERTVALUE.
Код ошибки COM: E_FAIL.
INFO 2021-10-12 20:51:03,966 ExchangeService Все задачи обмена завершены.
строка подключения:
Provider=LCPI.IBProvider.5;Password=password;User ID=USER;location=155.136.251.14/41035:D:\Base\BASE.FDB;dbclient_library=fbclient.dll
Код получения:
string query = $@"
SELECT Spr_street.ST_NAMESHOW Street FROM Spr_street ";
OleDbCommand cmd = createCMD(connection, query);
using (OleDbDataReader rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
HouseDBData Housedb = new HouseDBData()
{
Street =rdr[1].ToString(),
};
result.Add(Housedb);
}
}
Метод createCMD(connection, query);
private OleDbCommand createCMD(FireBirdDBConnection connection, string query)
{
OleDbConnection con = connection.GetConnection();
OleDbCommand cmd = con.CreateCommand();
cmd.Transaction = con.BeginTransaction();
cmd.CommandText = query;
return cmd;
}
Важно отметить, что для других типов работает все корректно ПОМОГИТЕ ПОЖАЛУЙСТА, я уже отчаялся