Questa sezione descrive le procedure memorizzate per le istanze Cloud SQL.
Una stored procedure contiene codice SQL che puoi riutilizzare.
Per eseguire una procedura memorizzata, utilizza il comando EXEC
e sostituisci le seguenti variabili:
- procedure_name è il nome della stored procedure.
- database_name è il nome del database in cui vuoi eseguire la procedura.
- schema_name è il nome dello schema in cui vuoi eseguire la procedura.
EXEC database_name.schema_name.procedure_name @param1, @param2;
Per creare una stored procedure personalizzata, consulta Creare una stored procedure.
Procedure memorizzate Cloud SQL per SQL Server
Stored procedure per l'utilizzo dell'inserimento collettivo
Per informazioni sull'inserimento collettivo, consulta Utilizzare l'inserimento collettivo per importare i dati.
msdb.dbo.gcloudsql_bulk_insert
Sintassi
EXEC msdb.dbo.gcloudsql_bulk_insert @database @schema @object @file ...
Descrizione
Questa stored procedure ha parametri e comportamento simili al comando BULK INSERT.
La stored procedure importa i dati in un'istanza Cloud SQL da un file archiviato in un bucket Cloud Storage. Utilizza l'API interoperabile Cloud Storage e le chiavi HMAC per autenticare l'accesso al bucket Cloud Storage.
Questa stored procedure ha i seguenti parametri:
Parametro | Tipo | Descrizione |
---|---|---|
@database |
SYSNAME |
Specifica il nome del database di destinazione in cui devono essere importati i dati. |
@schema |
SYSNAME |
Specifica il nome dello schema a cui appartiene la tabella. |
@object |
NVARCHAR |
Specifica il nome della tabella in cui devono essere inseriti i dati. |
@file |
NVARCHAR |
Specifica il percorso del file di importazione nel bucket Cloud Storage.
Il percorso deve avere il seguente formato: s3://storage.googleapis.com/BUCKET_NAME/FILE_PATH Sostituisci quanto segue:
|
@batchsize |
INT |
Specifica il numero di righe in un batch. |
@checkconstraints |
BIT |
Specifica che tutti i vincoli della tabella di destinazione devono essere controllati. |
@codepage |
NVARCHAR |
Specifica la pagina di codice dei dati nel file.
RAW è l'opzione predefinita e l'unica disponibile. |
@datafiletype |
NVARCHAR |
Specifica il tipo di file di inserimento collettivo. |
@datasource |
NVARCHAR |
Specifica il nome dell'origine dati esterna da cui vuoi importare i dati. |
@errorfile |
NVARCHAR |
Specifica il percorso del file utilizzato per raccogliere le righe con errori di formattazione.
Il percorso deve avere il seguente formato: s3://storage.googleapis.com/BUCKET_NAME/FILE_PATH Sostituisci quanto segue:
Inoltre, Cloud SQL crea un file con l'estensione |
@errorfiledatasource |
NVARCHAR |
Specifica il nome dell'origine dati esterna in cui vuoi creare il file di errore. |
@firstrow |
INT |
Specifica l'identificatore numerico della prima riga da caricare. |
@firetriggers |
BIT |
Indica che eventuali attivatori di inserimento definiti nella tabella di destinazione verranno eseguiti durante le operazioni di inserimento collettivo. |
@formatfiledatasource |
NVARCHAR |
Specifica il nome dell'origine dati esterna da cui caricare il file di formato. |
@keepidentity |
BIT |
Specifica l'utilizzo dei dati di identità dal file di importazione per la colonna di identità. I valori sono 0 , che significa false, e 1 , che significa true. |
@keepnulls |
BIT |
Specifica se le colonne vuote devono mantenere un valore nullo durante l'operazione di importazione collettiva, anziché avere valori predefiniti per le colonne inserite. I valori sono 0 , che significa false, e 1 , che significa true. |
@kilobytesperbatch |
INT |
Specifica la quantità di dati per batch, in KB. |
@lastrow |
INT |
Specifica l'identificatore numerico dell'ultima riga da caricare. |
@maxerrors |
INT |
Specifica il numero di errori consentiti prima che Cloud SQL annulli l'operazione. |
@ordercolumnsjson |
NVARCHAR |
Specifica l'ordinamento e le colonne in formato JSON. Ad esempio:
[{"name": "COLUMN_NAME","order": "ORDER"},{"name": "COLUMN_NAME","order": "ORDER"}] Sostituisci quanto segue:
|
@rowsperbatch |
INT |
Specifica il numero di righe per batch.
Per ulteriori informazioni sulla selezione di una dimensione del batch, consulta Considerazioni sul rendimento. |
@tablock |
BIT |
Specifica che viene eseguito il blocco di una tabella per la durata dell'operazione di inserimento collettivo. |
@format |
NVARCHAR |
Specifica il formato del file. Utilizza CSV come valore di questo parametro. |
@fieldquote |
NVARCHAR |
Specifica il carattere da utilizzare come carattere di virgolette nel file CSV.
Se non specifichi un valore, Cloud SQL utilizza |
@formatfile |
NVARCHAR |
Specifica il percorso del file in Cloud Storage che descrive il formato dei dati da importare.
Il percorso deve avere il seguente formato: s3://storage.googleapis.com/BUCKET_NAME/FILE_PATH Sostituisci quanto segue:
|
@fieldterminator |
NVARCHAR |
Specifica il terminatore di campo per i file di dati char e widechar. |
@rowterminator |
NVARCHAR |
Specifica il terminatore di riga per i file di dati char e widechar. |
Stored procedure per la funzionalità di controllo di SQL Server
Per informazioni sull'utilizzo della funzionalità di SQL Server Audit, consulta Controllo del database SQL Server.
msdb.dbo.gcloudsql_fn_get_audit_file
Sintassi
msdb.dbo.gcloudsql_fn_get_audit_file
Descrizione
Recupera i dati da un file di controllo creato dalla funzionalità di controllo di SQL Server.
Questa procedura memorizzata accetta gli stessi parametri della funzione
sys.fn_get_audit_file
. Per ulteriori informazioni su msdb.dbo.gcloudsql_fn_get_audit_file
, consulta la documentazione relativa alla funzione.
Stored procedure per Change Data Capture (CDC)
Per ulteriori informazioni sul CDC, consulta Attivare l'acquisizione dei dati sulle modifiche.
msdb.dbo.gcloudsql_cdc_enable_db
Sintassi
exec msdb.dbo.gcloudsql_cdc_enable_db databaseName
Descrizione
Attiva il monitoraggio dei dati delle modifiche per un database.
databaseName
: il nome del database su cui eseguire questa stored procedure.
msdb.dbo.gcloudsql_cdc_disable_db
Sintassi
exec msdb.dbo.gcloudsql_cdc_disable_db databaseName
Descrizione
Disattiva la tecnologia CDC per un database.
databaseName
: il nome del database su cui eseguire questa stored procedure.
Procedure archiviate per la replica esterna con Cloud SQL come publisher
Per ulteriori informazioni sulla pubblicazione per un sottoscrittore esterno o per un'altra istanza Cloud SQL, consulta Configurare le repliche esterne.
msdb.dbo.gcloudsql_transrepl_setup_distribution
Sintassi
exec msdb.dbo.gcloudsql_transrepl_setup_distribution @login,@password
Descrizione
Una stored procedure wrapper che configura un database di distribuzione. Il wrapper chiama quanto segue: sp_adddistributor, sp_adddistributiondb e sp_adddistpublisher.
- login: un nome utente esistente utilizzato per connettere e creare il database di distribuzione.
- password: la password utilizzata per la connessione al distributore.
msdb.dbo.gcloudsql_transrepl_replicationdboption
Sintassi
exec msdb.dbo.gcloudsql_transrepl_replicationdboption @db,@value
Descrizione
Attiva o disattiva l'opzione di pubblicazione di un database per il publisher che utilizza sp_replicationdboption.
- db: il database per cui viene impostata l'opzione di replica.
- value: consente di specificare
True
per attivare l'opzione di pubblicazione oFalse
per disattivarla.
msdb.dbo.gcloudsql_transrepl_addlogreader_agent
Sintassi
exec msdb.dbo.gcloudsql_transrepl_addlogreader_agent @db,@login,@password
Descrizione
Configura l'agente di lettura dei log per un database che utilizza sp_addlogreader_agent.
- db: il database da pubblicare.
- login: nome utente utilizzato per la connessione all'editore.
- password: la password utilizzata per la connessione.
msdb.dbo.gcloudsql_transrepl_addpublication
Sintassi
exec msdb.dbo.gcloudsql_transrepl_addpublication @db,@publication
Descrizione
Crea la pubblicazione transazionale e funge da stored procedure wrapper per sp_addpublication.
- db: il database in fase di pubblicazione.
- publication: il nome della nuova pubblicazione creata.
msdb.dbo.gcloudsql_transrepl_droppublication
Sintassi
exec msdb.dbo.gcloudsql_transrepl_droppublication @db,@publication
Descrizione
Elimina la pubblicazione transazionale e funge da stored procedure wrapper per sp_droppublication.
- db: il database per cui viene eliminata la pubblicazione.
- publication: il nome della pubblicazione eliminata.
msdb.dbo.gcloudsql_transrepl_addpublication_snapshot
Sintassi
exec msdb.dbo.gcloudsql_transrepl_addpublication_snapshot @db,@publication,@login,@password
Descrizione
Crea un agente di snapshot per il database in fase di pubblicazione, che funge da stored procedure wrapper per sp_addpublication_snapshot.
- db: il database per cui viene eliminata la pubblicazione.
- publication: il nome della pubblicazione eliminata.
- login: nome utente utilizzato per la connessione all'editore.
- password: la password utilizzata per la connessione.
msdb.dbo.gcloudsql_transrepl_addpushsubscription_agent
Sintassi
exec msdb.dbo.gcloudsql_transrepl_addpushsubscription_agent
@db,@publication,@subscriber_db,@subscriber_login,
@subscriber_password,@subscriber
Descrizione
Crea un nuovo job dell'agente pianificato per sincronizzare l'iscrizione push, fungendo da stored procedure wrapper per sp_addpushsubscription_agent.
- db: il database pubblicato.
- publication: il nome della pubblicazione a cui aggiungere un agente di abbonamento push.
- subscriber_db: il database dell'abbonato.
- subscriber_login: l'accesso utilizzato per la connessione all'abbonato.
- subscriber_password: la password utilizzata per la connessione al abbonato.
- subscriber: il nome IP dell'istanza dell'abbonato. Questo valore può essere specificato come:
<Hostname>,<PortNumber>
msdb.dbo.gcloudsql_transrepl_addmonitoraccess
Sintassi
exec msdb.dbo.gcloudsql_transrepl_addmonitoraccess @login
Descrizione
Fornisce l'accesso a Replication Monitor e all'istruzione SELECT
per le tabelle correlate alla replica nel database di distribuzione.
- login: l'account utilizzato per accedere al monitor della replica.
msdb.dbo.gcloudsql_transrepl_changedistributor_property
Sintassi
exec msdb.dbo.gcloudsql_transrepl_changedistributor_property @property,@value
Descrizione
Questa procedura memorizzata modifica heartbeat_interval
echiude sp_changedistributor_property
. Per saperne di più, consulta la documentazione relativa a sp_changedistributor_property
. Consulta anche questa documentazione per ulteriori informazioni sul valore heartbeat_interval
.
- property: la proprietà di un database di distribuzione.
- valore: il valore da fornire per la proprietà specificata.
msdb.dbo.gcloudsql_transrepl_dropsubscriber
Sintassi
exec msdb.dbo.gcloudsql_transrepl_dropsubscriber @subscriber
Descrizione
Rimuove l'abbonato, fungendo da stored procedure wrapper per sp_dropsubscriber.
- subscriber: il nome IP dell'abbonato da eliminare. Questo valore può essere specificato come:
<Hostname>,<PortNumber>
msdb.dbo.gcloudsql_transrepl_remove_distribution
Sintassi
exec msdb.dbo.gcloudsql_transrepl_remove_distribution
Descrizione
Rimuove la configurazione della distribuzione, fungendo da stored procedure wrapper per quanto segue: sp_dropdistpublisher, sp_dropdistributiondb, e sp_dropdistributor.
Passaggi successivi
- Scopri come attivare il monitoraggio dei dati delle modifiche (CDC).
- Scopri come configurare le repliche esterne.