CCommand::Open
Выполняет и при необходимости привязывает команду.
HRESULT Open(
const CSession& session,
LPCWSTR wszCommand,
DBPROPSET *pPropSet = NULL,
DBROWCOUNT* pRowsAffected = NULL,
REFGUID guidCommand = DBGUID_DEFAULT,
bool bBind = true,
ULONG ulPropSets = 0
) throw( );
HRESULT Open(
const CSession& session,
LPCSTR szCommand,
DBPROPSET *pPropSet = NULL,
DBROWCOUNT* pRowsAffected = NULL,
REFGUID guidCommand = DBGUID_DEFAULT,
bool bBind = true,
ULONG ulPropSets = 0
) throw( );
HRESULT Open(
const CSession& session,
INT szCommand = NULL,
DBPROPSET *pPropSet = NULL,
DBROWCOUNT* pRowsAffected = NULL,
REFGUID guidCommand = DBGUID_DEFAULT,
bool bBind = true,
ULONG ulPropSets = 0
) throw( );
HRESULT Open(
DBPROPSET *pPropSet = NULL,
DBROWCOUNT* pRowsAffected = NULL,
bool bBind = true,
ULONG ulPropSets = 0
) throw( );
Параметры
session
[in] сеанс, в котором выполняется команда.wszCommand
[in] команду выполнить, передается как строка в юникоде.Может быть NULL при использовании CAccessor, в этом случае команда будет восстановлена от значения, переданного параметру DEFINE_COMMAND макроса.См. раздел ICommand::Execute в справочнике программиста OLE DB.szCommand
[in] одно и то же, как wszCommand за исключением того, что этот параметр принимает командную строку ANSI.Четвертая форма этого метода может принимать значение Null.См. раздел «примечания» далее в этом разделе.pPropSet
[in] указатель на массив структур DBPROPSET, содержащий свойства и значения.См. раздел наборы свойств и группы свойств в справочнике программиста OLE DB в Windows SDK.pRowsAffected
[In/out] указатель на область памяти, где возвращается количество строк, затронутых командой.Если *pRowsAffected возвращается NULL, количество строк.В противном случае - значение Открыть устанавливает *pRowsAffected по следующим условиям:If
Then
Элемент cParamSetspParams больше 1
*pRowsAffected представляющее общее число строк, затронутых всеми наборами параметров, указанных в выполнение.
Число затронутых строк недоступно
*pRowsAffected набор – 1.
Команда не обновления не удаляет или вставляет строки
*pRowsAffected неопределено.
guidCommand
[in] идентификатор GUID, который определяет синтаксис и общие правила для поставщика использовать при анализе текст команды.См. раздел ICommandText::GetCommandText и ICommandText::SetCommandText в справочнике программиста OLE DB.bBind
[in] определяет, можно ли привязать команду автоматически после быть выполнено.Значение по умолчанию true, которое вызывает команду быть привязанным автоматически.Параметр bBind к false предотвращает автоматическую привязку команды, чтобы можно было выполнить вручную.Ручная привязка (особый интерес представляют интерес для пользователей OLAP).ulPropSets
[in] число структур DBPROPSET, переданных в аргумент pPropSet.
Возвращаемое значение
Стандартное HRESULT.
Заметки
Первые 3 формы Открыть принимают сеанс, создают команда, и выполняет привязку всех параметров команды по мере необходимости.
Первая форма Открыть принимает командную строку в юникоде и не имеет значения по умолчанию.
Вторая форма Открыть не принимает командную строку ANSI и значение по умолчанию (предоставленных для обеспечения обратной совместимости с существующими приложениями ANSI).
Третья форма Открыть позволяет командная строка, чтобы принимать значение null, поскольку тип int со значением по умолчанию NULL.Предоставляется для вызова Open(session, NULL); или Open(session); поскольку NULL типа int.Эта версия требует и утверждает, что параметр int значение null.
Используйте четвертая форму Открыть если вы уже создали команду и необходимо выполнить одно Подготовка и несколько выполнения.
![]() |
---|
Открыть вызывает Выполнить, которая, в свою очередь, вызывает GetNextResult. |
Требования
Header: atldbcli.h