Procedure memorizzate Cloud SQL

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

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:

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

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

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