指定した SQL Server Express LocalDB バージョンの情報を返します。たとえば、存在するかどうか、LocalDB 完全バージョン番号 (ビルド番号やリリース番号を含む) などです。
この情報は、LocalDBVersionInfo という名前の struct の形式で返されます。これには次の定義があります。
typedef struct _LocalDBVersionInfo
{
// Contains the size of the LocalDBVersionInfo struct
DWORD cbLocalDBVersionInfoSize;
// Holds the version name
TLocalDBVersionwszVersion;
// TRUE if the instance files exist on disk, FALSE otherwise
BOOL bExists;
// Holds the LocalDB version for the instance in the format: major.minor.build.revision
DWORD dwMajor;
DWORD dwMinor;
DWORD dwBuild;
DWORD dwRevision;
} LocalDBVersionInfo;
ヘッダー ファイル: sqlncli.h
構文
HRESULT LocalDBGetVersionInfo(
PCWSTR wszVersionName,
PLocalDBVersionInfo pVersionInfo,
DWORD dwVersionInfoSize
);
パラメーター
wszVersionName
[入力] LocalDB バージョンの名前。pVersionInfo
[出力] LocalDB バージョンについての情報を格納するバッファー。dwVersionInfoSize
[入力] VersionInfo バッファーのサイズを保持します。
戻り値
S_OK
関数が正常に実行されました。LOCALDB_ERROR_NOT_INSTALLED
SQL Server Express LocalDB は、コンピューターにインストールされていません。LOCALDB_ERROR_INVALID_PARAMETER
指定した 1 つまたは複数の入力パラメーターが無効です。LOCALDB_ERROR_UNKNOWN_VERSION
指定された LocalDB バージョンが存在しません。LOCALDB_ERROR_INTERNAL_ERROR
予期しないエラーが発生しました。 詳細をイベント ログで確認してください。
詳細
struct サイズ引数 (lpVersionInfoSize) を導入した理論的根拠は、API がさまざまなバージョンの LocalDBVersionInfo struct を返せるようにすることで、上位互換性と下位互換性を効率的に有効化するためです。
struct サイズ引数 (lpVersionInfoSize) が、既知のバージョンの LocalDBVersionInfo struct のサイズに一致する場合、そのバージョンの struct が返されます。 それ以外の場合、LOCALDB_ERROR_INVALID_PARAMETER が返されます。
LocalDBGetVersionInfo API の一般的な使用例は、次のようになります。
LocalDBVersionInfo vi;
LocalDBVersionInfo(L”11.0”, &vi, sizeof(LocalDBVersionInfo));
説明
LocalDB API を使用するコード例については、「SQL Server Express LocalDB リファレンス」を参照してください。