Função LocalDBGetVersionInfo
Aplica-se: SQL Server
Retorna informações sobre a versão de LocalDB do SQL Server Express especificada, como se existe ou não, e o número da versão total do LocalDB (incluindo números de versão e compilação).
As informações são retornadas na forma de um struct chamado LocalDBVersionInfo, que tem a definição a seguir.
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;
Arquivo de cabeçalho: msoledbsql.h
Sintaxe
HRESULT LocalDBGetVersionInfo(
PCWSTR wszVersionName, PLocalDBVersionInfo pVersionInfo, DWORD dwVersionInfoSize);
Parâmetros
wszVersionName
[Entrada] O nome de versão de LocalDB.
pVersionInfo
[Saída] O buffer para armazenar as informações sobre a versão de LocalDB.
dwVersionInfoSize
[Entrada] Contém o tamanho do buffer VersionInfo .
Devoluções
S_OK
A função foi bem-sucedida.
LOCALDB_ERROR_NOT_INSTALLED
O LocalDB do SQL Server Express não está instalado no computador.
LOCALDB_ERROR_INVALID_PARAMETER
Um ou mais parâmetros de entrada especificados são inválidos.
LOCALDB_ERROR_UNKNOWN_VERSION
A versão de LocalDB especificada não existe.
LOCALDB_ERROR_INTERNAL_ERROR
Erro inesperado. Consulte o log de eventos para obter detalhes.
Detalhes
A lógica por trás da introdução do argumento de tamanho struct (lpVersionInfoSize) é permitir que a API retorne versões diferentes do LocalDBVersionInfostruct, permitindo efetivamente a compatibilidade com versões anteriores e posteriores.
Se o argumento struct size (lpVersionInfoSize) corresponder ao tamanho de uma versão conhecida do LocalDBVersionInfostruct, essa versão do struct será retornada. Caso contrário, LOCALDB_ERROR_INVALID_PARAMETER será retornado.
Um exemplo típico de uso da API LocalDBGetVersionInfo é semelhante a este:
LocalDBVersionInfo vi;
LocalDBVersionInfo(L"11.0", &vi, sizeof(LocalDBVersionInfo));
Comentários
Para obter uma amostra do código que usa a API LocalDB, consulte SQL Server Express LocalDB Reference.
Confira também
Cabeçalho e informações de versão de LocalDB do SQL Server Express