.NET ODBC Oracle Params получить имя параметра, возвращенное поставщиком БД - возможно?

Я конвертирую код RDO в код провайдера ODBC в.NET.

Проблема в том, что имена параметров не были указаны в оригинальном коде, но значения параметров были получены по имени параметра после выполнения команды.

Есть ли в любом случае, чтобы имена параметров заполнялись поставщиком после выполнения команды, чтобы вызывающий код мог получить доступ к параметрам по имени.

Позвольте мне показать вам пример объявления param и доступа к нему.

    With rdqryClntBasic
        .Parameters.Add(.CreateParameter) : .Parameters(0).Direction = ParameterDirection.Input
        .Parameters(0).DbType = DbType.String
        .Parameters(0).Value = sClntProdCd

Конец с

.EffectiveDate = ToDate(rdqryClntBasic.Parameters("dtEffDt"). Значение)

Теперь вы можете увидеть, как это "раньше работало в RDO/VB". По какой-то причине он принял бы это и знал, какие имена параметров были после выполнения. Я предполагаю, что это должно было сделать другое путешествие туда и обратно, чтобы получить эту информацию.

Есть ли способ имитировать такое поведение в.NET для провайдера ODBC (с использованием Oracle)? Или я застрял, вручную указав имена параметров в коде (я понимаю, что это лучший вариант, но мне интересно, какова альтернатива, чтобы максимально приблизиться к исходному коду).

1 ответ

Нет, параметры в ODBC позиционные, а не по имени.

Другие вопросы по тегам