Freigeben über


LocalDBStartInstance-Funktion

Startet die angegebene SQL Server Express LocalDB-Instanz.

Headerdatei: sqlncli.h

Syntax

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

Die Parameter

pInstanceName
[Eingabe] Der Name der zu startenden LocalDB-Instanz.

dwFlags
[Eingabe] Reserviert für die zukünftige Verwendung. Derzeit sollte auf 0 festgelegt werden.

wszSqlConnection
[Ausgabe] Der Puffer zum Speichern der Verbindungszeichenfolge in der LocalDB-Instanz.

lpcchSqlConnection
[Eingabe/Ausgabe] Bei eingaben enthält die Größe des wszSqlConnection-Puffers in Zeichen, einschließlich der nachfolgenden NULL-Werte. Wenn die angegebene Puffergröße bei der Ausgabe zu klein ist, enthält die erforderliche Puffergröße in Zeichen, einschließlich der nachfolgenden NULL-Werte.

Rückkehr

S_OK
Die Funktion wurde erfolgreich ausgeführt.

LOCALDB_ERROR_NOT_INSTALLED
SQL Server Express LocalDB ist nicht auf dem Computer installiert.

LOCALDB_ERROR_INVALID_PARAMETER
Mindestens ein angegebener Eingabeparameter ist ungültig.

LOCALDB_ERROR_INVALID_INSTANCE_NAME
Der angegebene Instanzname ist ungültig.

LOCALDB_ERROR_UNKNOWN_INSTANCE
Die Instanz ist nicht vorhanden.

LOCALDB_ERROR_INSUFFICIENT_BUFFER
Der angegebene Puffer wszSqlConnection ist zu klein.

LOCALDB_ERROR_WAIT_TIMEOUT
Beim Versuch, die Synchronisierungssperren abzurufen, ist ein Timeout aufgetreten.

LOCALDB_ERROR_INSTANCE_FOLDER_PATH_TOO_LONG
Der Pfad, in dem die Instanz gespeichert werden soll, ist länger als MAX_PATH.

LOCALDB_ERROR_CANNOT_GET_USER_PROFILE_FOLDER
Ein Benutzerprofilordner kann nicht abgerufen werden.

LOCALDB_ERROR_CANNOT_ACCESS_INSTANCE_FOLDER
Auf einen Instanzordner kann nicht zugegriffen werden.

LOCALDB_ERROR_CANNOT_ACCESS_INSTANCE_REGISTRY
Auf eine Instanzregistrierung kann nicht zugegriffen werden.

LOCALDB_ERROR_CANNOT_MODIFY_INSTANCE_REGISTRY
Eine Instanzregistrierung kann nicht geändert werden.

LOCALDB_ERROR_CANNOT_CREATE_SQL_PROCESS
Ein Prozess für SQL Server kann nicht erstellt werden.

LOCALDB_ERROR_SQL_SERVER_STARTUP_FAILED
Ein SQL Server-Prozess wurde gestartet, der SQL Server-Start ist jedoch fehlgeschlagen.

LOCALDB_ERROR_INSTANCE_CONFIGURATION_CORRUPT
Eine Instanzkonfiguration wurde beschädigt.

LOCALDB_ERROR_AUTO_INSTANCE_CREATE_FAILED
Eine automatische Instanz kann nicht erstellt werden. Fehlerdetails finden Sie im Ereignisprotokoll der Windows-Anwendung.

LOCALDB_ERROR_INTERNAL_ERROR
Ein unerwarteter Fehler ist aufgetreten. Details finden Sie im Ereignisprotokoll.

Einzelheiten

Sowohl das Verbindungspufferargument (wszSqlConnection) als auch das Verbindungspuffergrößenargument (lpcchSqlConnection) sind optional. Die folgende Tabelle enthält Optionen für die Verwendung dieser Argumente und deren Ergebnisse.

Puffer Puffergröße Grund Maßnahme
NULL NULL Der Benutzer möchte die Instanz starten und benötigt keinen Pipenamen. Startet eine Instanz (keine Piperückgabe und keine erforderliche Puffergröße).
NULL Gegenwart Der Benutzer fordert die Größe des Ausgabepuffers an. (Im nächsten Anruf fragt der Benutzer wahrscheinlich nach einem tatsächlichen Start.) Gibt eine erforderliche Puffergröße zurück (kein Start und keine Piperückgabe). Das Ergebnis ist S_OK.
Gegenwart NULL Unstatthaft; falsche Eingabe. Zurückgegebenes Ergebnis ist LOCALDB_ERROR_INVALID_PARAMETER.
Gegenwart Gegenwart Der Benutzer möchte die Instanz starten und benötigt den Pipenamen, um eine Verbindung mit der Instanz herzustellen, nachdem sie gestartet wurde. Überprüft die Puffergröße, startet die Instanz und gibt den Pipenamen im Puffer zurück.
Das Argument für die Puffergröße gibt die Länge der Zeichenfolge "server=" zurück, ohne null zu beenden.

Ein Codebeispiel, das die LocalDB-API verwendet, finden Sie in der SQL Server Express LocalDB-Referenz.

Siehe auch

SQL Server Express LocalDB-Header und Versionsinformationen