Apps Script może łączyć się z zewnętrznymi bazami danych za pomocą Usługa JDBC – otoka standardu Technologia Java Database Connectivity Usługa JDBC obsługuje Google Cloud SQL for MySQL, MySQL i Microsoft SQL Bazy danych serwera i Oracle.
Aby zaktualizować zewnętrzną bazę danych za pomocą JDBC, Twój skrypt musi otworzyć połączenie do bazy danych, a potem wprowadzić zmiany, wysyłając instrukcje SQL.
Bazy danych Google Cloud SQL
Google Cloud SQL umożliwia tworzenie działających relacyjnych baz danych w chmurze Google. Pamiętaj, że Cloud SQL może powodować naliczanie opłat w zależności od użycia.
Aby utworzyć instancję Google Cloud SQL, wykonaj czynności opisane w Krótkie wprowadzenie do Cloud SQL.
Tworzę połączenia Google Cloud SQL
Istnieją 2 sposoby na nawiązanie połączenia z Google Cloud SQL baza danych przy użyciu usługi JDBC Apps Script:
- (Zalecane) Łączenie przez Jdbc.getCloudSqlConnection(url)
- Łączenie za pomocą Jdbc.getConnection(url)
Poniżej omówiono te metody. Obie metody są prawidłowe, ale druga metoda wymaga autoryzowania zestawu zakresów adresów IP na potrzeby dostępu do bazy danych.
Przy użyciu Jdbc.getCloudSqlConnection(url) (zalecane)
Ta metoda tworzy połączenie z instancją MySQL w Google Cloud SQL przy użyciu interfejsu Jdbc.getCloudSqlConnection(url)
. Adres URL bazy danych ma postać jdbc:google:mysql://subname
, gdzie subname
to nazwa połączenia instancji MySQL
wymienionych na stronie Przegląd instancji Cloud SQL w
Konsola Google Cloud.
Aby połączyć się z Cloud SQL SQL Server, zobacz Jdbc.getConnection(url).
Przy użyciu Jdbc.getConnection(url)
Aby korzystać z tej metody, musisz upoważnić określone Routing między domenami (CIDR) bez klasy Zakresy adresów IP, aby serwery Apps Script mogły łączyć się z bazą danych. Zanim uruchomisz skrypt, wykonaj te czynności:
W instancji Google Cloud SQL autoryzuj zakresy adresów IP, pojedynczo z tego źródła danych.
Skopiuj adres URL przypisany do Twojej bazy danych. powinien mieć formularz
jdbc:mysql:subname
.
Po autoryzowaniu tych zakresów adresów IP możesz tworzyć połączenia z instancją Google Cloud SQL za pomocą jednej z metod Jdbc.getConnection(url) i adresu URL skopiowanego powyżej.
Inne bazy danych
Jeśli masz już własną bazę danych MySQL, Microsoft SQL Server lub Oracle, i możesz się z nim połączyć przez usługę JDBC Apps Script.
Tworzenie innych połączeń z bazą danych
Tworzenie połączenia z bazą danych przy użyciu Apps Script usługa JDBC w ustawieniach bazy danych. musisz autoryzować zakresy adresów IP z tego źródła danych.
Gdy te listy dozwoleń zostaną utworzone, możesz utworzyć połączenie z bazą danych, używając jednej z metod Jdbc.getConnection(url) i adresu URL bazy danych.
Przykładowy kod
W przykładowym kodzie poniżej założono, że łączysz się z bazą danych Google Cloud SQL. i tworzy połączenia z bazą danych za pomocą Jdbc.getCloudSqlConnection(url) . W przypadku innych baz danych musisz użyć Jdbc.getConnection(url) do tworzenia połączeń z bazami danych.
Więcej informacji o metodach JDBC znajdziesz w dokumentacji Dokumentacja w języku Java dla JDBC.
Tworzenie bazy danych, użytkownika i tabeli
Większość programistów używa
narzędzia wiersza poleceń MySQL, aby
tworzenia baz danych, użytkowników i tabel. Możesz jednak zrobić to samo
w Apps Script, jak pokazano poniżej. Warto utworzyć co najmniej jedną
inny użytkownik, dzięki czemu skrypt nie zawsze musi łączyć się z bazą danych jako
root
Zapisz w bazie danych
Przykłady poniżej pokazują, jak zapisać w bazie danych pojedynczy rekord oraz partię 500 rekordów. Grupowanie jest kluczowe w przypadku operacji zbiorczych.
Należy również pamiętać o użyciu instrukcji z parametrami, w których zmienne są
oznaczone przez ?
. Aby zapobiegać
ataków typu wstrzykiwanie kodu SQL,
instrukcje z parametrami, które pozwalają zmienić znaczenie wszystkich danych przekazywanych przez użytkownika.
Czytanie z bazy danych
Ten przykład pokazuje, jak odczytać dużą liczbę rekordów z bazy danych, wykonując w razie potrzeby pętlę na zbiorze wyników.
Zamykanie połączeń
Połączenia JDBC są zamykane automatycznie po zakończeniu wykonywania skryptu. (Zachowaj w
pamiętaj, że pojedynczy element google.script.run
liczy się jako pełne wykonanie, nawet jeśli strona usługi HTML, która utworzyła tag
nadal otwarte).
Jeśli jednak wiesz już, że masz już za sobą połączenie, instrukcję lub zestaw wyników,
przed zakończeniem skryptu warto zamknąć je ręcznie, wywołując metodę
JdbcConnection.close()
JdbcStatement.close()
,
lub
JdbcResultSet.close()
.
Wyświetlam okno alertu lub promptu powoduje także zakończenie wszystkich otwartych połączeń JDBC. Inny przykładowy interfejs użytkownika takich jak niestandardowe menu czy okna dialogowe i paski boczne z niestandardowymi nie.
Google, Google Workspace i powiązane znaki oraz logotypy są znakami towarowymi Google LLC. Wszystkie inne nazwy firm i produktów są znakami towarowymi odpowiednich podmiotów. z którymi są powiązane.