LocalDBGetVersionInfo 函数

返回指定 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
一个或多个指定的输入参数无效。

LOCALDB_ERROR_UNKNOWN_VERSION
指定的 LocalDB 版本不存在。

LOCALDB_ERROR_INTERNAL_ERROR
发生意外错误。 有关详细信息,请参阅事件日志。

详细信息

引入 struct 大小参数(lpVersionInfoSize)的理由是使 API 能够返回 LocalDBVersionInfostruct 的不同版本,从而有效地实现向前和向后兼容性。

struct如果 size 参数 (lpVersionInfoSize) 与 LocalDBVersionInfostruct 的已知版本的大小匹配,则返回该版本struct。 否则,将返回LOCALDB_ERROR_INVALID_PARAMETER。

LocalDBGetVersionInfo API 用法的典型示例如下所示:

LocalDBVersionInfo vi;  
LocalDBVersionInfo(L"11.0", &vi, sizeof(LocalDBVersionInfo));  
  

注解

有关使用 LocalDB API 的代码示例,请参阅 SQL Server Express LocalDB 参考

另请参阅

SQL Server Express LocalDB 标头和版本信息