以前在 Google Apps脚本中编写脚本时,我在所有功能中打开并关闭了我的Jdbc连接。
为了加快我的应用程序,最好保持连接打开并在另一个函数中使用它。但是,我不知道如何在 Google Apps脚本中执行此操作。
有人可以给我一个建议或一个例子吗?
答案 0 :(得分:0)
以下是如何在ScriptDB中保留连接的示例。
function myFunction() {
var conn = ScriptDb.getMyDb().query({name : "my_connection"} );
var connection = null;
var itemId = null;
if(conn.getSize() == 0) {
Logger.log(" Connection not found, creating new one");
connection = Jdbc.getConnection('jdbc:mysql://<host>:3306/<instance>', 'user', 'password');
itemId = ScriptDb.getMyDb().save({name : "my_connection", connection : connection}).getId();
}else {
Logger.log(" Connection found, retrieving "+conn.getSize());
var dbItem = conn.next();
connection = dbItem.connection;
itemId = dbItem.getId();
}
//Check if it is closed
if(connection.isClosed()) {
connection = Jdbc.getConnection('jdbc:mysql://<host>:3306/<instance>', 'user', 'password');
//After opening remember to save to dabatase again and retain only one connection
ScriptDb.getMyDb().removeById(itemId);
ScriptDb.getMyDb().save({name : "my_connection", connection : connection});
}
//Use your connection here
//Remenber to close it based in some criteria
}
示例here。