Questa sezione descrive le stored procedure per le istanze Cloud SQL.
Una stored procedure contiene codice SQL che puoi riutilizzare.
Per eseguire una stored procedure, 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 Crea una stored procedure.
Stored procedure di Cloud SQL per SQL Server
Stored procedure per l'utilizzo dell'inserimento collettivo
Per informazioni sull'inserimento collettivo, vedi 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 di 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 importare i dati. |
@schema |
SYSNAME |
Specifica il nome dello schema a cui appartiene la tabella. |
@object |
NVARCHAR |
Specifica il nome della tabella in cui inserire 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 tabella codici 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 errori. |
@firstrow |
INT |
Specifica l'identificatore numerico della prima riga da caricare. |
@firetriggers |
BIT |
Indica che tutti i trigger 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à del file di importazione per la colonna dell'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 batch, consulta Considerazioni sul rendimento. |
@tablock |
BIT |
Specifica che viene acquisito un blocco della 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 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 audit di SQL Server
Per informazioni sull'utilizzo della funzionalità di audit SQL Server, consulta la sezione Audit 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 stored procedure accetta gli stessi parametri della funzione sys.fn_get_audit_file
. Per ulteriori informazioni relative a
msdb.dbo.gcloudsql_fn_get_audit_file
, consulta la
documentazione relativa a questa funzione.
Stored procedure per Change Data Capture (CDC)
Per ulteriori informazioni su CDC, vedi Abilitare Change Data Capture.
msdb.dbo.gcloudsql_cdc_enable_db
Sintassi
exec msdb.dbo.gcloudsql_cdc_enable_db databaseName
Descrizione
Attiva Change Data Capture (CDC) per un database.
databaseName
- 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 CDC per un database.
databaseName
- Nome del database su cui eseguire questa stored procedure.
Stored procedure per la replica esterna con Cloud SQL come publisher
Per ulteriori informazioni sulla pubblicazione in un abbonato esterno o in 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 accesso esistente utilizzato per connettersi 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 il quale 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: accesso 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: database in fase di pubblicazione.
- publication: 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: 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 snapshot per il database in fase di pubblicazione, fungendo da stored procedure wrapper per sp_addpublication_snapshot.
- db: il database per cui viene eliminata la pubblicazione.
- publication: nome della pubblicazione eliminata.
- login: accesso 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 la sottoscrizione push, fungendo da stored procedure wrapper per sp_addpushsubscription_agent.
- db: il database pubblicato.
- publication: nome della pubblicazione a cui aggiungere un agente di sottoscrizione push.
- subscriber_db: il database dell'abbonato.
- subscriber_login: l'accesso utilizzato per connettersi all'abbonato.
- subscriber_password: la password utilizzata per connettersi all'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 Monitoraggio replica e all'istruzione SELECT
nelle tabelle correlate alla replica nel database di distribuzione.
- login: l'accesso utilizzato per accedere al monitor di replica.
msdb.dbo.gcloudsql_transrepl_changedistributor_property
Sintassi
exec msdb.dbo.gcloudsql_transrepl_changedistributor_property @property,@value
Descrizione
Questa stored procedure modifica heartbeat_interval
e
inserisce sp_changedistributor_property
. Per saperne di più, consulta la
documentazione
per sp_changedistributor_property
. Consulta anche la documentazione per ulteriori informazioni sul valore heartbeat_interval
.
- property: la proprietà di un database di distribuzione.
- value: il valore da fornire per la proprietà specificata.
msdb.dbo.gcloudsql_transrepl_dropsubscriber
Sintassi
exec msdb.dbo.gcloudsql_transrepl_dropsubscriber @subscriber
Descrizione
Rimuove il sottoscrittore, 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: sp_dropdistpublisher, sp_dropdistributiondb, e sp_dropdistributor.
Passaggi successivi
- Scopri come attivare Change Data Capture (CDC).
- Scopri come configurare le repliche esterne.