Le versioni 1.0 e 1.1 del protocollo di sicurezza TLS sono disattivate. Per stabilire le connessioni, utilizza TLS 1.2 o versioni successive.
Google Apps Script può connettersi a database esterni tramite il servizio JDBC, un wrapper attorno alla tecnologia standard Java Database Connectivity. Il servizio JDBC supporta i database Google Cloud SQL per MySQL, MySQL, Microsoft SQL Server, Oracle e PostgreSQL.
Se il foglio di lavoro sta diventando troppo grande o se riscontri problemi di timeout con calcoli complessi, spostare i dati in un database esterno può migliorare significativamente le prestazioni e l'affidabilità.
Per aggiornare un database esterno con JDBC, lo script deve aprire una connessione al database e poi apportare modifiche inviando istruzioni SQL.
Database Google Cloud SQL
Google Cloud SQL ti consente di creare database relazionali nel cloud di Google. Cloud SQL potrebbe comportare addebiti in base all'utilizzo.
Crea un'istanza Google Cloud SQL seguendo i passaggi elencati nella guida rapida di Cloud SQL.
Creare connessioni Google Cloud SQL
Esistono due modi per stabilire una connessione a un database Google Cloud SQL utilizzando il servizio JDBC di Apps Script:
- (Consigliato) Connessione tramite Jdbc.getCloudSqlConnection
- Connessione tramite Jdbc.getConnection
Entrambi i metodi sono validi, ma il secondo richiede l'autorizzazione di un insieme di intervalli IP per l'accesso al database.
Utilizzare Jdbc.getCloudSqlConnection (consigliato)
Questo metodo crea una connessione a un'istanza Google Cloud SQL per MySQL utilizzando il
Jdbc.getCloudSqlConnection. L'URL del database ha il formato jdbc:google:mysql://subname, dove
subname è il nome della connessione all'istanza MySQL elencato nella pagina Panoramica dell'istanza Cloud SQL
nella console Google Cloud.
Per connetterti a Cloud SQL SQL Server, consulta Jdbc.getConnection.
Utilizzare Jdbc.getConnection
Per utilizzare questo metodo, devi autorizzare determinati intervalli di indirizzi IP CIDR (Classless Inter-Domain Routing) in modo che i server di Apps Script possano connettersi a tuo database. Prima di eseguire lo script, completa i seguenti passaggi:
Nell'istanza Google Cloud SQL, autorizza gli intervalli IP, uno alla volta, da questa origine dati.
Copia l'URL assegnato al database; dovrebbe avere il formato
jdbc:mysql:subname.
Una volta autorizzati questi intervalli IP, crea connessioni all'istanza Google Cloud SQL utilizzando uno dei Jdbc.getConnection e l'URL copiato in precedenza.
Altri database
Se hai già un database MySQL, Microsoft SQL Server, Oracle o PostgreSQL, connettiti tramite il servizio JDBC di Apps Script.
Creare altre connessioni al database
Per creare una connessione al database utilizzando il servizio JDBC di Apps Script , devi autorizzare gli intervalli IP da questa origine dati nelle impostazioni del database.
Il servizio JDBC può connettersi solo alle porte 1025 o successive. Assicurati che il database non sia in esecuzione su una porta inferiore.
Una volta inserite queste liste consentite, crea una connessione al database utilizzando uno dei Jdbc.getConnection e l'URL del database.
Codice campione
Il seguente codice campione presuppone che tu stia eseguendo la connessione a un database Google Cloud SQL e crea connessioni al database utilizzando il Jdbc.getCloudSqlConnection. Per altri database, devi utilizzare il Jdbc.getConnection per creare connessioni al database.
Per ulteriori informazioni sui metodi JDBC, consulta la documentazione Java per JDBC.
Creare un database, un utente e una tabella
La maggior parte degli sviluppatori utilizza lo
strumento a riga di comando MySQL per
creare database, utenti e tabelle. Tuttavia, è possibile fare la stessa cosa in Apps Script, come mostrato nell'esempio seguente. Crea almeno un altro utente in modo che lo script non debba sempre connettersi al database come root.
Scrivere nel database
Gli esempi seguenti mostrano come scrivere un singolo record nel database e un batch di 500 record. Il batch è fondamentale per le operazioni collettive.
Vengono utilizzate istruzioni con parametri, in cui le variabili sono indicate da ?. Per
evitare attacchi di SQL injection,
utilizza istruzioni con parametri per eseguire l'escape di tutti i dati forniti dall'utente.
Leggere dal database
Questo esempio mostra come leggere un numero elevato di record dal database, eseguendo un loop sul set di risultati, se necessario.
Chiudere le connessioni
Le connessioni JDBC si chiudono automaticamente al termine dell'esecuzione di uno script. Le singole
google.script.run chiamate vengono conteggiate come un'
esecuzione completa, anche se la pagina del servizio HTML che ha effettuato la chiamata rimane
aperta.
Tuttavia, se sai di aver terminato di utilizzare una connessione, un'istruzione o un set di risultati
prima della fine dello script, chiudili manualmente chiamando
JdbcConnection.close,
JdbcStatement.close,
o
JdbcResultSet.close.
La visualizzazione di una finestra di dialogo di avviso o prompt termina anche le connessioni JDBC aperte. Tuttavia, altri elementi dell'interfaccia utente, come menu o finestre di dialogo personalizzati e barre laterali con contenuti personalizzati, non lo fanno.
Google, Google Workspace e i marchi e loghi correlati sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle società a cui sono associati.