In diesem Abschnitt werden gespeicherte Prozeduren für Cloud SQL-Instanzen beschrieben.
Eine gespeicherte Prozedur beinhaltet einen SQL-Code, den Sie wiederverwenden können.
Verwenden Sie zum Ausführen der gespeicherten Prozedur den Befehl EXEC
und ersetzen Sie die folgenden Variablen:
- procedure_name: der Name des gespeicherten Verfahrens.
- database_name: der Name der Datenbank, in der Sie das Verfahren ausführen möchten.
- schema_name: der Name des Schemas, in dem Sie das Verfahren ausführen möchten.
EXEC database_name.schema_name.procedure_name @param1, @param2;
Informationen zum Erstellen eines eigenen gespeicherten Verfahrens finden Sie unter Gespeichertes Verfahren erstellen.
Gespeicherte Prozeduren für Cloud SQL for SQL Server
Gespeicherte Prozedur für die Verwendung von Bulk-Einfügung
Weitere Informationen zur Bulk-Einfügung finden Sie unter Bulk-Einfügung für den Import von Daten verwenden.
msdb.dbo.gcloudsql_bulk_insert
Syntax
EXEC msdb.dbo.gcloudsql_bulk_insert @database @schema @object @file ...
Beschreibung
Diese gespeicherte Prozedur hat ähnliche Parameter und ein ähnliches Verhalten wie der Befehl BULK INSERT.
Die gespeicherte Prozedur importiert Daten aus einer Datei, die in einem Cloud Storage-Bucket gespeichert ist, in eine Cloud SQL-Instanz. Für die Authentifizierung des Zugriffs auf den Cloud Storage-Bucket werden die interoperable API von Cloud Storage und die HMAC-Schlüssel verwendet.
Diese gespeicherte Prozedur hat die folgenden Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
@database |
SYSNAME |
Gibt den Namen der Zieldatenbank an, in die die Daten importiert werden sollen. |
@schema |
SYSNAME |
Der Name des Schemas, zu dem die Tabelle gehört. |
@object |
NVARCHAR |
Gibt den Namen der Tabelle an, in die die Daten eingefügt werden sollen. |
@file |
NVARCHAR |
Gibt den Pfad zur Importdatei im Cloud Storage-Bucket an.
Der Pfad muss das folgende Format haben: s3://storage.googleapis.com/BUCKET_NAME/FILE_PATH Ersetzen Sie Folgendes:
|
@batchsize |
INT |
Gibt die Anzahl der Zeilen in einem Batch an. |
@checkconstraints |
BIT |
Gibt an, dass alle Einschränkungen für die Zieltabelle geprüft werden müssen. |
@codepage |
NVARCHAR |
Gibt die Codepage der Daten in der Datei an.
RAW ist die Standard- und einzige Option. |
@datafiletype |
NVARCHAR |
Gibt den Dateityp für Bulk-Einfügungen an. |
@datasource |
NVARCHAR |
Gibt den Namen der externen Datenquelle an, aus der Sie die Daten importieren möchten. |
@errorfile |
NVARCHAR |
Gibt den Pfad zur Datei an, mit der Zeilen mit Formatierungsfehlern erfasst wurden.
Der Pfad muss das folgende Format haben: s3://storage.googleapis.com/BUCKET_NAME/FILE_PATH Ersetzen Sie Folgendes:
Außerdem wird in Cloud SQL eine Datei mit der Erweiterung |
@errorfiledatasource |
NVARCHAR |
Gibt den Namen der externen Datenquelle an, in der Sie die Fehlerdatei erstellen möchten. |
@firstrow |
INT |
Gibt die numerische Kennung der ersten zu ladenden Zeile an. |
@firetriggers |
BIT |
Gibt an, dass alle Einfügungs-Trigger, die in der Zieltabelle definiert sind, während der Bulk-Einfügungs-Vorgänge ausgeführt werden. |
@formatfiledatasource |
NVARCHAR |
Gibt den Namen der externen Datenquelle an, aus der die Formatdatei geladen werden soll. |
@keepidentity |
BIT |
Gibt an, ob Identitätsdaten aus der Importdatei für die Identitätsspalte verwendet werden sollen. Die Werte sind 0 , was falsch (false) und 1 , was wahr (true) bedeutet. |
@keepnulls |
BIT |
Gibt an, ob leere Spalten während des Bulk-Importvorgangs einen Nullwert beibehalten sollen, anstatt dass Standardwerte für die Spalten eingefügt werden. Die Werte sind 0 , was falsch (false) und 1 , was wahr (true) bedeutet. |
@kilobytesperbatch |
INT |
Gibt die Datenmenge pro Batch in KB an. |
@lastrow |
INT |
Gibt die numerische Kennung der letzten zu ladenden Zeile an. |
@maxerrors |
INT |
Gibt die zulässige Anzahl von Fehlern an, bevor Cloud SQL den Vorgang abbricht. |
@ordercolumnsjson |
NVARCHAR |
Gibt die Sortierreihenfolge und die Spalten im JSON-Format an. Beispiel:
[{"name": "COLUMN_NAME","order": "ORDER"},{"name": "COLUMN_NAME","order": "ORDER"}] Ersetzen Sie Folgendes:
|
@rowsperbatch |
INT |
Gibt die Anzahl der Zeilen pro Batch an.
Weitere Informationen zur Auswahl einer Batchgröße finden Sie unter Überlegungen zur Leistung. |
@tablock |
BIT |
Gibt an, dass eine Tabellensperre für die Dauer des Bulk-Einfügungs-Vorgangs verwendet wird. |
@format |
NVARCHAR |
Gibt das Format der Datei an. Verwenden Sie CSV als Wert für diesen Parameter. |
@fieldquote |
NVARCHAR |
Gibt das Zeichen an, das in der CSV-Datei als Anführungszeichen verwendet werden soll.
Wenn Sie keinen Wert angeben, verwendet Cloud SQL |
@formatfile |
NVARCHAR |
Gibt den Pfad der Datei in Cloud Storage an, der das Format der zu importierenden Daten beschreibt.
Der Pfad sollte das folgende Format haben: s3://storage.googleapis.com/BUCKET_NAME/FILE_PATH Ersetzen Sie Folgendes:
|
@fieldterminator |
NVARCHAR |
Gibt den Feldterminator für char- und widechar-Dateien an. |
@rowterminator |
NVARCHAR |
Gibt den Zeilenterminator für char- und widechar-Dateien an. |
Gespeicherte Prozeduren für die Funktion von SQL Server-Audit
Informationen zur Verwendung der Funktion von SQL Server-Audit finden Sie unter SQL Server-Datenbankprüfung.
msdb.dbo.gcloudsql_fn_get_audit_file
Syntax
msdb.dbo.gcloudsql_fn_get_audit_file
Beschreibung
Ruft die Daten aus einer Audit-Datei ab, die mithilfe der SQL Server-Audit-Funktion erstellt wurde.
Diese gespeicherte Prozedur akzeptiert die gleichen Parameter wie die Funktion sys.fn_get_audit_file
. Weitere Informationen zu msdb.dbo.gcloudsql_fn_get_audit_file
finden Sie in der Dokumentation zu dieser Funktion.
Gespeicherte Prozeduren für Change Data Capture (CDC)
Weitere Informationen zu CDC erhalten Sie unter Change Data Capture aktivieren.
msdb.dbo.gcloudsql_cdc_enable_db
Syntax
exec msdb.dbo.gcloudsql_cdc_enable_db databaseName
Beschreibung
Aktiviert Change Data Capture für eine Datenbank.
databaseName
– Der Name der Datenbank, in der dieses gespeicherte Verfahren ausgeführt werden soll.
msdb.dbo.gcloudsql_cdc_disable_db
Syntax
exec msdb.dbo.gcloudsql_cdc_disable_db databaseName
Beschreibung
Deaktiviert CDC für eine Datenbank.
databaseName
– Der Name der Datenbank, in der dieses gespeicherte Verfahren ausgeführt werden soll.
Gespeicherte Prozeduren für die externe Replikation mit Cloud SQL als Publisher
Weitere Informationen zur Veröffentlichung mit einem externen Abonnenten oder in einer anderen Cloud SQL-Instanz finden Sie unter Externe Replikate konfigurieren.
msdb.dbo.gcloudsql_transrepl_setup_distribution
Syntax
exec msdb.dbo.gcloudsql_transrepl_setup_distribution @login,@password
Beschreibung
Eine gespeicherte Wrapper-Prozedur, mit dem eine Distributionsdatenbank eingerichtet wird. Der Wrapper ruft Folgendes auf: sp_adddistribution, sp_adddistributiondb und sp_adddistpublisher.
- login – Eine vorhandene Anmeldung zum Verbinden und Erstellen der Distributionsdatenbank.
- password – Das Passwort, das beim Herstellen einer Verbindung zum Verteiler verwendet wird.
msdb.dbo.gcloudsql_transrepl_replicationdboption
Syntax
exec msdb.dbo.gcloudsql_transrepl_replicationdboption @db,@value
Beschreibung
Aktiviert oder deaktiviert die Veröffentlichungsoption einer Datenbank für den Publisher, der sp_replicationdboption verwendet.
- db – Die Datenbank, für die die Replikationsoption festgelegt wird.
- value – Geben Sie hierfür
True
an, um die Veröffentlichungsoption zu aktivieren, oderFalse
, um die Veröffentlichungsoption zu deaktivieren.
msdb.dbo.gcloudsql_transrepl_addlogreader_agent
Syntax
exec msdb.dbo.gcloudsql_transrepl_addlogreader_agent @db,@login,@password
Beschreibung
Richtet den Log-Reader-Agent für eine Datenbank ein, die sp_addlogreader_agent verwendet.
- db – Die Datenbank, die veröffentlicht werden soll.
- login – Der Log-in beim Herstellen einer Verbindung zum Publisher.
- password – Das Passwort, das beim Herstellen der Verbindung verwendet wird.
msdb.dbo.gcloudsql_transrepl_addpublication
Syntax
exec msdb.dbo.gcloudsql_transrepl_addpublication @db,@publication
Beschreibung
Erstellt die Transaktionspublikation und fungiert als gespeicherte Wrapper-Prozedur für sp_addpublication.
- db – Die Datenbank, die veröffentlicht wird.
- publication – Der Name der neu erstellten Publikation.
msdb.dbo.gcloudsql_transrepl_droppublication
Syntax
exec msdb.dbo.gcloudsql_transrepl_droppublication @db,@publication
Beschreibung
Löscht die Transaktionspublikation und fungiert als gespeicherte Wrapper-Prozedur für sp_droppublication.
- db – Die Datenbank, für die die Veröffentlichung gelöscht wurde.
- publication – Der Name der Publikation, die gelöscht wurde.
msdb.dbo.gcloudsql_transrepl_addpublication_snapshot
Syntax
exec msdb.dbo.gcloudsql_transrepl_addpublication_snapshot @db,@publication,@login,@password
Beschreibung
Erstellt einen Snapshot-Agent für die veröffentlichte Datenbank als gespeicherte Wrapper-Prozedur für sp_addpublication_snapshot.
- db – Die Datenbank, für die die Veröffentlichung gelöscht wurde.
- publication – Der Name der Publikation, die gelöscht wurde.
- login – Der Log-in beim Herstellen einer Verbindung zum Publisher.
- password – Das Passwort, das beim Herstellen der Verbindung verwendet wird.
msdb.dbo.gcloudsql_transrepl_addpushsubscription_agent
Syntax
exec msdb.dbo.gcloudsql_transrepl_addpushsubscription_agent
@db,@publication,@subscriber_db,@subscriber_login,
@subscriber_password,@subscriber
Beschreibung
Erstellt einen neuen geplanten Agent-Job zur Synchronisierung des Push-Abos, das als gespeicherte Wrapper-Prozedur für sp_addpushsubscription_agent fungiert.
- db – Die Datenbank, die veröffentlicht wird.
- publication – Der Name der Publikation, der ein Push-Abo-Agent hinzugefügt werden soll.
- subscriber_db – Die Datenbank des Abonnenten.
- subscriber_login – Die Anmeldung, die beim Herstellen einer Verbindung zum Abonnenten verwendet wird.
- subscriber_password – Das Passwort, das beim Herstellen einer Verbindung zum Abonnenten verwendet wird.
- subscriber – Der IP-Name der Abonnenteninstanz. Dieser Wert wird im folgenden Format angegeben:
<Hostname>,<PortNumber>
.
msdb.dbo.gcloudsql_transrepl_addmonitoraccess
Syntax
exec msdb.dbo.gcloudsql_transrepl_addmonitoraccess @login
Beschreibung
Bietet Zugriff auf den Replikationsmonitor und die Anweisung SELECT
für replikationsbezogene Tabellen in der Distributionsdatenbank.
- login – Die Anmeldung für den Zugriff auf den Replikationsmonitor.
msdb.dbo.gcloudsql_transrepl_changedistributor_property
Syntax
exec msdb.dbo.gcloudsql_transrepl_changedistributor_property @property,@value
Beschreibung
Mit diesem gespeicherten Verfahren wird heartbeat_interval
geändert und sp_changedistributor_property
zusammengefasst. Weitere Informationen finden Sie in der Dokumentation zu sp_changedistributor_property
. Weitere Informationen zum Wert heartbeat_interval
erhalten Sie in dieser Dokumentation.
- property – Das Attribut für eine Distributionsdatenbank.
- value – Der Wert, der für das angegebene Attribut bereitgestellt werden soll.
msdb.dbo.gcloudsql_transrepl_dropsubscriber
Syntax
exec msdb.dbo.gcloudsql_transrepl_dropsubscriber @subscriber
Beschreibung
Entfernt den Abonnenten, der als gespeicherte Wrapper-Prozedur für sp_dropsubscriber dient.
- subscriber – Der IP-Name des Abonnenten, der gelöscht werden soll. Dieser Wert wird im folgenden Format angegeben:
<Hostname>,<PortNumber>
.
msdb.dbo.gcloudsql_transrepl_remove_distribution
Syntax
exec msdb.dbo.gcloudsql_transrepl_remove_distribution
Beschreibung
Entfernt die Verteilungskonfiguration, die als gespeicherte Wrapper-Prozedur verwendet wird: sp_dropdistpublisher, sp_dropdistributiondb und sp_dropdistribution.