Функция MsiDatabaseGetPrimaryKeysA (msiquery.h)

Функция MsiDatabaseGetPrimaryKeys возвращает запись, содержащую имена всех столбцов первичного ключа для указанной таблицы. Эта функция возвращает дескриптор, который должен быть закрыт с помощью MsiCloseHandle.

Синтаксис

UINT MsiDatabaseGetPrimaryKeysA(
  [in]  MSIHANDLE hDatabase,
  [in]  LPCSTR    szTableName,
  [out] MSIHANDLE *phRecord
);

Параметры

[in] hDatabase

Дескриптор базы данных. См . раздел Получение дескриптора базы данных.

[in] szTableName

Указывает имя таблицы, из которой необходимо получить имена первичных ключей.

[out] phRecord

Указатель на дескриптор записи, содержащей имена первичного ключа.

Возвращаемое значение

Эта функция возвращает UINT.

Комментарии

Число полей возвращаемой записи — это количество столбцов первичного ключа, возвращаемых функцией MsiDatabaseGetPrimaryKeys . Возвращаемая запись содержит имя таблицы в поле (0) и имена столбцов, которые составляют имена первичных ключей в последующих полях. Имена первичных ключей соответствуют номерам столбцов для полей.

Эту функцию нельзя использовать с таблицей _Tables или _Columns таблицей.

Обратите внимание, что рекомендуется использовать переменные типа PMSIHANDLE, так как установщик закрывает объекты PMSIHANDLE по мере их выхода из область, тогда как необходимо закрывать объекты MSIHANDLE путем вызова MsiCloseHandle. Дополнительные сведения см. в разделе Использование PMSIHANDLE вместо HANDLE статьи Рекомендации по установщику Windows.

Примечание

Заголовок msiquery.h определяет MsiDatabaseGetPrimaryKeys в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Установщик Windows 5.0 в Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Установщик Windows 4.0 или Установщик Windows 4.5 в Windows Server 2008 или Windows Vista. Установщик Windows в Windows Server 2003 или Windows XP
Целевая платформа Windows
Header msiquery.h
Библиотека Msi.lib
DLL Msi.dll

См. также раздел

Общие функции доступа к базе данных