Dela via


LocalDBStartInstance function

Applies to:SQL Server

Startar den angivna SQL Server Express LocalDB-instansen.

Header file:msoledbsql.h

Syntax

HRESULT LocalDBStartInstance(
           PCWSTR pInstanceName ,
           DWORD dwFlags ,
           LPWSTR wszSqlConnection ,
           LPDWORD lpcchSqlConnection
);

Arguments

pInstanceName

[Indata] Namnet på den LocalDB-instans som ska startas.

dwFlags

[Indata] Reserverad för framtida användning. För närvarande bör anges till 0.

wszSqlConnection

[Utdata] Bufferten för att lagra anslutningssträngen till LocalDB-instansen.

lpcchSqlConnection

[Input/Output] On input contains the size of the wszSqlConnection buffer in characters, including any trailing nulls. Om den angivna buffertstorleken är för liten i utdata innehåller den nödvändiga buffertstorleken i tecken, inklusive eventuella avslutande null-värden.

Returns

S_OK: Funktionen lyckades.

Error Description
LOCALDB_ERROR_NOT_INSTALLED SQL Server Express LocalDB är inte installerat på datorn.
LOCALDB_ERROR_INVALID_PARAMETER En eller flera angivna indataparametrar är ogiltiga.
LOCALDB_ERROR_INVALID_INSTANCE_NAME Det angivna instansnamnet är ogiltigt.
LOCALDB_ERROR_UNKNOWN_INSTANCE Instansen finns inte.
LOCALDB_ERROR_INSUFFICIENT_BUFFER The specified buffer wszSqlConnection is too small.
LOCALDB_ERROR_WAIT_TIMEOUT En timeout inträffade när synkroniseringslåsen skulle hämtas.
LOCALDB_ERROR_INSTANCE_FOLDER_PATH_TOO_LONG Sökvägen där instansen ska lagras är längre än MAX_PATH.
LOCALDB_ERROR_CANNOT_GET_USER_PROFILE_FOLDER Det går inte att hämta en användarprofilmapp.
LOCALDB_ERROR_CANNOT_ACCESS_INSTANCE_FOLDER Det går inte att komma åt en instansmapp.
LOCALDB_ERROR_CANNOT_ACCESS_INSTANCE_REGISTRY Det går inte att komma åt ett instansregister.
LOCALDB_ERROR_CANNOT_MODIFY_INSTANCE_REGISTRY Det går inte att ändra ett instansregister.
LOCALDB_ERROR_CANNOT_CREATE_SQL_PROCESS Det går inte att skapa en process för SQL Server.
LOCALDB_ERROR_SQL_SERVER_STARTUP_FAILED En SQL Server-process startades, men SQL Server-starten misslyckades.
LOCALDB_ERROR_INSTANCE_CONFIGURATION_CORRUPT En instanskonfiguration var skadad.
LOCALDB_ERROR_AUTO_INSTANCE_CREATE_FAILED Det går inte att skapa en automatisk instans. Mer information finns i händelseloggen för Windows-program.
LOCALDB_ERROR_INTERNAL_ERROR Ett oväntat fel uppstod. Mer information finns i händelseloggen.

Details

Both the connection buffer argument (wszSqlConnection) and the connection buffer size argument (lpcchSqlConnection) are optional. I följande tabell visas alternativ för att använda dessa argument och deras resultat.

Buffer Buffer size Rationale Action
NULL NULL Användaren vill starta instansen och behöver inget pipe-namn. Startar en instans (ingen rörretur och ingen nödvändig buffertstorleksretur).
NULL Present Användaren frågar efter utdatabuffertens storlek. (I nästa samtal kommer användaren förmodligen att be om en faktisk start.) Returnerar en nödvändig buffertstorlek (ingen start och ingen rörretur). Resultatet är S_OK.
Present NULL Inte tillåtet; felaktiga indata. Det returnerade resultatet är LOCALDB_ERROR_INVALID_PARAMETER.
Present Present Användaren vill starta instansen och behöver pipe-namnet för att ansluta till den när den har startats. Kontrollerar buffertstorleken, startar instansen och returnerar pipe-namnet i bufferten.
Argumentet buffertstorlek returnerar längden på strängen "server=" utan att inkludera avslutande nullvärden.

Ett kodexempel som använder LocalDB API finns i SQL Server Express LocalDB-referens.