Procedure memorizzate Cloud SQL

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 ulteriori informazioni, consulta la pagina di riferimento EXECUTE (Transact-SQL).

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:

  • BUCKET_NAME: specifica il nome del bucket Cloud Storage.
  • FILE_PATH: specifica il percorso del file archiviato nel bucket Cloud Storage.
@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:

  • BUCKET_NAME: specifica il nome del bucket Cloud Storage.
  • FILE_PATH: specifica il percorso del file archiviato nel bucket Cloud Storage.

Inoltre, Cloud SQL crea un file con l'estensione.ERROR.txt. Questo file contiene riferimenti a ogni riga del file di errori e fornisce la diagnostica degli errori.

@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:

  • COLUMN_NAME: il nome della colonna.
  • ORDER: l'ordinamento. Il valore di questo parametro può essere asc per ordine crescente o desc per ordine decrescente.
@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 " come valore predefinito.

@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:

  • BUCKET_NAME: specifica il nome del bucket Cloud Storage.
  • FILE_PATH: specifica il percorso del file archiviato nel bucket Cloud Storage.
@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 su CDC, consulta Abilitare il monitoraggio delle modifiche.

msdb.dbo.gcloudsql_cdc_enable_db

Sintassi

exec msdb.dbo.gcloudsql_cdc_enable_db databaseName

Descrizione

Attiva il monitoraggio 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 o False 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: il nome utente 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