Apps Komut Dosyası, standart Java Database Connectivity teknolojisinin sarmalayıcısı olan JDBC hizmeti aracılığıyla harici veritabanlarına bağlanabilir. JDBC hizmeti; MySQL için Google Cloud SQL, MySQL, Microsoft SQL Server ve Oracle veritabanlarını destekler.
JDBC ile harici bir veritabanını güncellemek için komut dosyanızın veritabanına bağlantı açması ve ardından SQL ifadeleri göndererek değişiklik yapması gerekir.
Google Cloud SQL veritabanları
Google Cloud SQL, Google'ın bulutunda bulunan ilişkisel veritabanları oluşturmanıza olanak tanır. Cloud SQL'in kullanımınıza bağlı olarak ücretlendirilebileceğini unutmayın.
Cloud SQL hızlı başlangıç kılavuzunda listelenen adımları uygulayarak Google Cloud SQL örneği oluşturabilirsiniz.
Google Cloud SQL bağlantıları oluşturma
Apps Script'in JDBC hizmetini kullanarak Google Cloud SQL veritabanıyla bağlantı kurmanın iki yolu vardır:
- (Önerilen) Jdbc.getCloudSqlConnection(url) kullanarak bağlanma
- Jdbc.getConnection(url) kullanarak bağlanma
Bu yöntemler aşağıda açıklanmıştır. Her ikisi de geçerlidir ancak ikinci yöntem, veritabanınıza erişim için bir dizi IP aralığını yetkilendirmenizi gerektirir.
Jdbc.getCloudSqlConnection(url) kullanma (önerilir)
Bu yöntem, Jdbc.getCloudSqlConnection(url) yöntemini kullanarak bir Google Cloud SQL MySQL örneğine bağlantı oluşturur. Veritabanı URL'si jdbc:google:mysql://subname
biçimindedir. Burada subname
, Google Cloud Console'daki Cloud SQL örneği Genel Bakış sayfasında listelenen MySQL örneği bağlantı adıdır.
Cloud SQL SQL Server'a bağlanmak için Jdbc.getConnection(url) bölümüne bakın.
Jdbc.getConnection(url) kullanma
Bu yöntemi kullanmak için Apps Komut Dosyası sunucularının veritabanınıza bağlanabilmesi için belirli Sınıfsız Alanlar Arası Yönlendirme (CIDR) IP adresi aralıklarını yetkilendirmeniz gerekir. Komut dosyanızı çalıştırmadan önce aşağıdaki adımları tamamlayın:
Google Cloud SQL örneğinizde, bu veri kaynağından her seferinde bir tane olmak üzere IP aralıklarını yetkilendirin.
Veritabanınıza atanan URL'yi kopyalayın. URL,
jdbc:mysql:subname
biçiminde olmalıdır.
Bu IP aralıklarına yetki verdikten sonra, yukarıda kopyaladığınız URL'yi ve Jdbc.getConnection(url) yöntemlerinden birini kullanarak Google Cloud SQL örneğinize bağlantı oluşturabilirsiniz.
Diğer veritabanları
Kendi MySQL, Microsoft SQL Server veya Oracle veritabanınız varsa Apps Script'in JDBC hizmeti üzerinden bu veritabanına bağlanabilirsiniz.
Diğer veritabanı bağlantılarını oluşturma
Apps Komut Dosyası JDBC hizmetini kullanarak bir veritabanı bağlantısı oluşturmak için veritabanı ayarlarınızda bu veri kaynağındaki IP aralıklarına yetki vermeniz gerekir.
Bu izin verilenler listeleri oluşturulduktan sonra, Jdbc.getConnection(url) yöntemlerinden birini ve veritabanınızın URL'sini kullanarak veritabanına bağlantı oluşturabilirsiniz.
Örnek kod
Aşağıdaki örnek kod, bir Google Cloud SQL veritabanına bağlandığınızı varsayar ve Jdbc.getCloudSqlConnection(url) yöntemini kullanarak veritabanı bağlantıları oluşturur. Diğer veritabanları için veritabanı bağlantıları oluşturmak üzere Jdbc.getConnection(url) yöntemini kullanmanız gerekir.
JDBC yöntemleri hakkında daha fazla bilgi için JDBC ile ilgili Java belgelerine bakın.
Veritabanı, kullanıcı ve tablo oluşturma
Çoğu geliştirici, veritabanı, kullanıcı ve tablo oluşturmak için MySQL komut satırı aracını kullanır. Ancak, aşağıda gösterildiği gibi Apps Komut Dosyası'nda aynı işlemi yapabilirsiniz. Komut dosyanızın her zaman root
olarak veritabanına bağlanması gerekmemesi için en az bir başka kullanıcı oluşturmanız önerilir.
Veritabanına yazma
Aşağıdaki örneklerde, veritabanına tek bir kaydın ve 500 kayıttan oluşan bir toplu işin nasıl yazılacağı gösterilmektedir. Toplu işlemler için gruplandırma hayati önem taşır.
Ayrıca, değişkenlerin ?
ile gösterildiği parametreli ifadelerin kullanımına da dikkat edin. SQL yerleştirme saldırılarını önlemek için kullanıcı tarafından sağlanan tüm verileri kaçırmak üzere parametreli ifadeler kullanmanız gerekir.
Veritabanından okuma
Bu örnekte, gerektiğinde sonuç kümesinde döngü oluşturarak veritabanından çok sayıda kaydın nasıl okunacağı gösterilmektedir.
Bağlantıları kapatma
JDBC bağlantıları, bir komut dosyası yürütmeyi tamamladığında otomatik olarak kapanır. (Aramayı yapan HTML hizmet sayfası açık kalsa bile tek bir google.script.run
aramanın tam bir yürütme olarak sayıldığını unutmayın.)
Bununla birlikte, bir bağlantının, ifadenin veya sonuç kümesinin komut dosyasının sonundan önce tamamlandığını biliyorsanız JdbcConnection.close()
, JdbcStatement.close()
veya JdbcResultSet.close()
çağırarak bunları manuel olarak kapatmanız iyi olur.
Uyarı veya istem iletişim kutusu gösterilmesi açık JDBC bağlantılarını da sonlandırır. Ancak özel menüler veya iletişim kutuları ve özel içerikli kenar çubukları gibi diğer gösterim kullanıcı arayüzü öğeleri bu kapsamda değildir.
Google, Google Workspace ve ilgili markalar ile logolar Google LLC şirketinin ticari markalarıdır. Diğer tüm şirket ve ürün adları, ilişkili oldukları şirketlerin ticari markalarıdır.