Apps Script dapat terhubung ke database eksternal melalui Layanan JDBC, wrapper di sekitar Teknologi Konektivitas Database Java. Layanan JDBC mendukung Google Cloud SQL untuk MySQL, MySQL, dan Microsoft SQL Server, dan database Oracle.
Untuk mengupdate database eksternal dengan JDBC, skrip Anda harus membuka koneksi ke {i>database<i} dan kemudian membuat perubahan dengan mengirim pernyataan SQL.
Database Google Cloud SQL
Google Cloud SQL memungkinkan Anda membuat database relasional yang aktif di cloud Google. Perhatikan bahwa Cloud SQL mungkin dikenai biaya berdasarkan penggunaan Anda.
Anda dapat membuat instance Google Cloud SQL dengan mengikuti langkah-langkah yang tercantum dalam Panduan memulai Cloud SQL.
Membuat koneksi Google Cloud SQL
Ada dua cara untuk membuat koneksi dengan Google Cloud SQL menggunakan layanan JDBC Apps Script:
- (Direkomendasikan) Menghubungkan menggunakan Jdbc.getCloudSqlConnection(url)
- Menghubungkan menggunakan Jdbc.getConnection(url)
Metode ini dijelaskan di bawah. Keduanya valid, tetapi metode kedua mengharuskan Anda mengizinkan serangkaian rentang IP untuk mengakses database.
Menggunakan Jdbc.getCloudSqlConnection(url) (direkomendasikan)
Metode ini membuat koneksi ke instance MySQL di Google Cloud SQL menggunakan alamat Jdbc.getCloudSqlConnection(url)
. URL database memiliki bentuk jdbc:google:mysql://subname
, dengan subname
adalah Nama koneksi instance MySQL
yang tercantum di halaman Overview instance Cloud SQL pada
Konsol Google Cloud.
Untuk terhubung ke Cloud SQL Server, lihat Jdbc.getConnection(url).
Menggunakan Jdbc.getConnection(url)
Untuk menggunakan metode ini, Anda harus mengizinkan Classless Inter-Domain Routing (CIDR) Rentang alamat IP agar server Apps Script dapat terhubung ke database Anda. Sebelum menjalankan skrip, selesaikan langkah-langkah berikut:
Dalam instance Google Cloud SQL Anda, mengotorisasi rentang IP, satu per satu dari sumber data ini.
Salin URL yang ditetapkan ke database Anda; layar itu harus memiliki dari
jdbc:mysql:subname
.
Setelah Anda mengotorisasi rentang IP ini, Anda bisa membuat koneksi ke Instance Google Cloud SQL menggunakan salah satu Jdbc.getConnection(url) metode dan URL yang Anda salin di atas.
{i>Database<i} lain
Jika Anda sudah memiliki {i>database<i} MySQL, Microsoft SQL Server, atau Oracle Anda sendiri, Anda dapat menyambungkannya melalui layanan JDBC Apps Script.
Membuat koneksi database lainnya
Untuk membuat koneksi database menggunakan Apps Script Layanan JDBC, di setelan database Anda Anda harus mengizinkan rentang IP dari sumber data ini.
Setelah daftar yang diizinkan ini diterapkan, Anda dapat membuat koneksi ke database menggunakan salah satu Jdbc.getConnection(url) metode dan URL database Anda.
Kode contoh
Kode contoh di bawah ini mengasumsikan bahwa Anda terhubung ke database Google Cloud SQL, dan membuat koneksi database menggunakan Jdbc.getCloudSqlConnection(url) . Untuk {i>database<i} lain, Anda harus menggunakan Jdbc.getConnection(url) untuk membuat koneksi database.
Untuk informasi selengkapnya tentang metode JDBC, lihat Dokumentasi Java untuk JDBC.
Membuat {i>database<i}, pengguna, dan tabel
Sebagian besar developer menggunakan
Alat command line MySQL untuk
membuat {i>database<i},
pengguna, dan tabel. Namun, mungkin saja dilakukan
hal yang sama
di Apps Script, seperti yang ditunjukkan di bawah ini. Sebaiknya, Anda
membuat setidaknya satu
pengguna lain sehingga skrip Anda tidak selalu harus
terhubung ke {i>database<i} sebagai
root
.
Menulis ke database
Contoh di bawah ini menunjukkan cara menulis satu {i>record<i} ke {i>database<i} sebagai serta kumpulan 500 kumpulan data. Pengelompokan sangat penting untuk operasi massal.
Perhatikan juga penggunaan pernyataan
berparameter, di mana variabelnya
dilambangkan dengan ?
. Untuk mencegah
serangan injeksi SQL, Anda harus menggunakan
pernyataan berparameter untuk meng-escape semua data yang disediakan pengguna.
Membaca dari database
Contoh ini menunjukkan cara membaca data dalam jumlah besar dari {i>database<i}, melakukan loop pada hasil yang telah diatur sesuai kebutuhan.
Memutus koneksi
Koneksi JDBC menutup secara otomatis ketika skrip selesai dieksekusi. (Tetap masukkan
Perlu diingat bahwa satu google.script.run
dihitung sebagai eksekusi lengkap, meskipun laman layanan HTML yang membuat
tetap terbuka.)
Meskipun demikian, jika Anda tahu bahwa Anda sudah selesai dengan koneksi, pernyataan, atau set hasil
sebelum skrip berakhir, sebaiknya tutup skrip tersebut secara manual dengan
JdbcConnection.close()
,
JdbcStatement.close()
,
atau
JdbcResultSet.close()
.
Menampilkan dialog pemberitahuan atau perintah juga menghentikan semua koneksi JDBC terbuka. Namun, elemen lain yang menampilkan UI yang berbeda—seperti menu atau dialog khusus dan bilah sisi dengan konten.
Google, Google Workspace, serta merek dan logo terkait adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lainnya adalah merek dagang masing-masing perusahaan yang terkait dengannya.