Метод Execute21 (RDS)
Выполняет запрос и создает набор записей ADO для использования в ADO 2.1.
Важный
Начиная с Windows 8 и Windows Server 2012, компоненты сервера RDS больше не включены в операционную систему Windows (дополнительные сведения см. в статье Windows 8 и Windows Server 2012 Compatibility Cookbook). Клиентские компоненты RDS будут удалены в будущей версии Windows. Избегайте использования этой функции в новой работе разработки и планируйте изменение приложений, которые в настоящее время используют эту функцию. Приложения, использующие RDS, должны перенестися в службы данных WCF.
Синтаксис
object.Execute21(ConnectionString As String, HandlerString As String, QueryString As String, lMarshalOptions As Long, Properties, TableId, lExecuteOptions As Long, pParameters)
Параметры
ConnectionString
Строка, используемая для подключения к поставщику OLE DB, где запрос будет отправлен для выполнения. Если обработчик указан с помощью HandlerString, он может изменить или заменить строку подключения.
HandlerString
Строка определяет обработчик, используемый с этим выполнением. Строка содержит две части. Первая часть содержит имя (ProgID) используемого обработчика. Вторая часть строки содержит аргументы, передаваемые обработчику. Как интерпретируется строка аргументов, определяется обработчиком. Две части разделены первым экземпляром запятой в строке (хотя строка аргументов может содержать дополнительные запятые). Аргументы являются необязательными.
QueryString
Команда на языке команд, поддерживаемом поставщиком OLE DB, определяемой в строке подключения. Для поставщиков на основе SQL он может содержать инструкцию команды Transact-SQL, но для поставщиков, отличных от SQL (например, MSDataShape), это может не быть оператором запроса Transact-SQL.
Кроме того, если используется обработчик (и настоятельно рекомендуется использовать обработчик), обработчик может изменить или заменить указанное здесь значение. Например, обработчик обычно заменяет QueryString строкой запроса из файла .ini. По умолчанию используется файл Msdfmap.ini.
lMarshalOptions
Используется для задания параметров маршалинга в возвращаемом наборе строк или наборе записей.
TableID
Вариант типа VT_EMPTY или VT_BSTR. Если это значение имеет тип VT_EMPTY, он игнорируется. Если он имеет тип VT_BSTR, набор записей создается с помощью adCmdTableDirect с использованием значения, указанного здесь, и параметр QueryString игнорируется.
lExecuteOptions
Битовая маска параметров выполнения:
1=ReadOnly Набор записей будет открыт с помощью adLockReadOnly.
2=NoBatch Набор записей будет открыт с помощью adLockOptimistic.
4=AllParamInfoSupplied Вызывающий объект гарантирует, что сведения о параметрах для всех параметров предоставляются в pParameters.
8=Сведения о параметрах GetInfo для запроса будут получены от поставщика OLE DB и возвращаются в параметре pParameters. Запрос не выполняется, и набор записей не возвращается.
16=GetHiddenColumns Набор записей будет открыт с помощью adLockBatchOptimistic, а все скрытые столбцы будут включены в набор записей.
Хотя ReadOnly, NoBatch и GetHiddenColumns являются взаимоисключающими параметрами, это не ошибка, чтобы задать несколько из них. Если задано несколько параметров, GetHiddenColumns имеет приоритет над всеми остальными параметрами, а затем ReadOnly. Если параметры не указаны, по умолчанию набор записей открывается с помощью adLockBatchOptimistic но скрытые столбцы не включаются в набор записей.
pParameters
Вариант, содержащий безопасный массив определений параметров. Если параметр GetInfo был указан в lExecuteOptions, этот параметр используется для возврата определений параметров, полученных от поставщика OLE DB. В противном случае этот параметр может быть пустым.
Замечания
Параметр HandlerString может иметь значение NULL. Что происходит в этом случае, зависит от того, как настроен сервер RDS. Строка обработчика MSDFMAP.handler указывает, что следует использовать предоставленный корпорацией Майкрософт обработчик (Msdfmap.dll). Строка обработчика "MASDFMAP.handler,sample.ini" указывает, что обработчик Msdfmap.dll должен использоваться и что аргумент "sample.ini" должен передаваться обработчику. MSDFMAP.dll интерпретирует аргумент как направление использования sample.ini для проверки строк подключения и запроса.
Заметка
Метод Execute21 — это версия методаExecute (RDS). Где необходимо использовать метод Execute для взаимодействия с ADO 2.1, вместо этого можно вызвать метод Execute21. Возможности метода Execute в ADO 2.5 и более поздних версий являются супермножеством возможностей, предоставляемых для того же метода в ADO 2.1.