Apps Script יכול להתחבר למסדי נתונים חיצוניים באמצעות שירות JDBC, wrapper במסגרת התקן טכנולוגיית הקישוריות של מסד הנתונים של Java. שירות ה-JDBC תומך במסדי נתונים של Google Cloud SQL for MySQL, MySQL, Microsoft SQL Server ו-Oracle.
כדי לעדכן מסד נתונים חיצוני עם JDBC, הסקריפט חייב לפתוח חיבור במסד הנתונים, ואז לבצע שינויים על ידי שליחת הצהרות SQL.
מסדי נתונים של Google Cloud SQL
Google Cloud SQL מאפשר ליצור מסדי נתונים רלציוניים בענן של Google. הערה: Cloud SQL עשויים לצבור חיובים בהתאם לשימוש.
כדי ליצור מכונה של Google Cloud SQL, פועלים לפי השלבים המפורטים ב המדריך למתחילים של Cloud SQL.
יצירת חיבורים ל-Google Cloud SQL
יש שתי דרכים ליצור חיבור עם Google Cloud SQL באמצעות שירות JDBC של Apps Script:
- (מומלץ) מתחברים באמצעות Jdbc.getCloudSqlConnection(url)
- מתחברים באמצעות Jdbc.getConnection(url)
השיטות האלה מוסברות בהמשך. שתי השיטות תקינות, אבל בשיטה השנייה צריך להעניק הרשאה לקבוצה של טווחי IP כדי לגשת למסד הנתונים.
שימוש ב-Jdbc.getCloudSqlConnection(url) (מומלץ)
השיטה הזו יוצרת חיבור למכונה של Google Cloud SQL MySQL באמצעות הפונקציה Jdbc.getCloudSqlConnection(url)
. כתובת ה-URL של מסד הנתונים היא jdbc:google:mysql://subname
, כאשר subname
הוא שם החיבור של המכונה ב-MySQL שמופיע בדף Overview של המכונה ב-Cloud SQL במסוף Google Cloud.
כדי להתחבר אל Cloud SQL Server, אפשר לעיין במאמר Jdbc.getConnection(url).
באמצעות Jdbc.getConnection(url)
כדי להשתמש בשיטה הזו, עליך לתת הרשאות מסוימות Classless Inter-Domain Routing (CIDR) טווחים של כתובות IP כדי שהשרתים של Apps Script יוכלו להתחבר למסד הנתונים שלכם. לפני שמריצים את הסקריפט, יש לבצע את השלבים הבאים:
במכונה של Google Cloud SQL, נותנים הרשאה לטווחי ה-IP, אחד בכל פעם, ממקור הנתונים הזה.
מעתיקים את כתובת ה-URL שהוקצה למסד הנתונים. הפורמט שלה צריך להיות
jdbc:mysql:subname
.
לאחר שהענקת הרשאה לטווחי ה-IP האלה, תוכל ליצור חיבורים ב-Google Cloud SQL Jdbc.getConnection(url) ואת כתובת ה-URL שהעתקת למעלה.
מסדי נתונים אחרים
אם כבר יש לכם מסד נתונים משלכם מסוג MySQL, Microsoft SQL Server או Oracle, ניתן להתחבר אליו באמצעות שירות JDBC של Apps Script.
יצירת חיבורים אחרים למסדי נתונים
כדי ליצור חיבור למסד נתונים באמצעות Apps Script שירות JDBC, בהגדרות של מסד הנתונים צריך לאשר טווחי IP ממקור הנתונים הזה.
אחרי שתגדירו את רשימות ההיתרים האלה, תוכלו ליצור חיבור למסד הנתונים באמצעות אחת מהשיטות Jdbc.getConnection(url) וכתובת ה-URL של מסד הנתונים.
קוד לדוגמה
בקוד לדוגמה שבהמשך אנו מתייחסים למסד נתונים של Google Cloud SQL, ויוצרים חיבורי מסד נתונים באמצעות השיטה Jdbc.getCloudSqlConnection(url). עבור מסדי נתונים אחרים צריך להשתמש Jdbc.getConnection(url) כדי ליצור חיבורים למסד הנתונים.
לקבלת מידע נוסף על methods של JDBC, אפשר להיכנס אל מסמכי תיעוד של Java ל-JDBC.
יצירת מסד נתונים, משתמש וטבלה
רוב המפתחים משתמשים
כלי שורת הפקודה MySQL
ליצור מסדי נתונים, משתמשים וטבלאות. אבל אפשר לעשות את אותו הדבר
ב-Apps Script, כפי שמוצג בהמשך. מומלץ ליצור לפחות
משתמש אחר, כך שהסקריפט לא תמיד צריך להתחבר למסד הנתונים בתור
root
כתיבה למסד הנתונים
הדוגמאות הבאות ממחישות איך לכתוב רשומה יחידה במסד הנתונים בתור וגם קבוצה של 500 רשומות. קיבוץ הנתונים הוא חיוני לפעולות בכמות גדולה.
שימו לב גם לשימוש בהצהרות עם פרמטרים, שבהם המשתנים
מצוין על ידי ?
. כדי למנוע
התקפות הזרקת SQL, כדאי להשתמש
הצהרות עם פרמטרים שנועדו לסמן בתו בריחה (escape) את כל הנתונים שסופקו על ידי משתמשים.
הקראה ממסד הנתונים
הדוגמה הזו ממחישה איך לקרוא מספר גדול של רשומות מסד הנתונים בלולאה על התוצאה שהוגדרה לפי הצורך.
סגירת החיבורים
חיבורי JDBC נסגרים באופן אוטומטי כשהפעלת סקריפט מסיימת. (להשאיר ב-
שימו לב שgoogle.script.run
אחד
קריאה נספרת כביצוע מלא, גם אם דף שירות ה-HTML יצר את
השיחה תישאר פתוחה.)
עם זאת, אם אתה יודע שסיימת עם חיבור, הצהרה או תוצאות
לפני שהסקריפט מסתיים, כדאי לסגור אותן באופן ידני
JdbcConnection.close()
JdbcStatement.close()
,
או
JdbcResultSet.close()
.
מוצגת תיבת דו-שיח של התראה או הודעה הוא גם סוגר את כל חיבורי ה-JDBC הפתוחים. לעומת זאת, רכיבי ממשק משתמש אחרים שמוצגים – כמו תפריטים מותאמים אישית או תיבות דו-שיח וסרגלי צד עם תוכן מותאם אישית – לא נכללים במדיניות הזו.
Google, Google Workspace וסימנים וסמלי לוגו קשורים הם סימנים מסחריים של Google LLC. כל שמות החברות והמוצרים האחרים הם סימנים מסחריים של החברות שאליו הם משויכים.