0

我的脚本文件中有几个函数,发布 doGet 函数后,所有其他函数都使用 serverHandlers 调用,并且我使用了如下语句,我怀疑我们可以使用这个“var conn=Jdbc.getCloudSqlConnection(dburl, user,密码);" 每个脚本文件全局而不是在每个函数中写入。

如果是,请提供一个简单的例子来理解使用它的概念。

function doGet()
{
      var conn=Jdbc.getCloudSqlConnection(dburl, user, pwd);
      .............
      .............
      .............
      conn.close();
}
function X()
{
      var conn=Jdbc.getCloudSqlConnection(dburl, user, pwd);
      .............
      .............
      .............
      conn.close();
}
function Y()
{
      var conn=Jdbc.getCloudSqlConnection(dburl, user, pwd);
      .............
      .............
      .............
      conn.close();
}
function Z()
{
      var conn=Jdbc.getCloudSqlConnection(dburl, user, pwd);
      .............
      .............
      .............
      conn.close();
}

Tnx,CL。

4

3 回答 3

0

您可以为您的 jdbc 连接创建一个库函数,并从您的其他脚本中调用它。

function connect(domain, projectid, dbname, user, pwd) {

 var connString = "jdbc:google:rdbms://" + domain + ":" + projectid + ":" + dbname + "/mysql";
 return Jdbc.getCloudSqlConnection(connString, user, pwd);   

}

比这样调用主脚本中的函数。

var conn =  mysql.connect(domain, projectid, dbname, user, pwd);

而不是像往常一样使用 conn 。

var pstmt = conn.prepareStatement(sqlStatement);
于 2013-05-09T01:38:49.417 回答
0

您可以创建常量,但不能创建变量。在您的示例中,您不能使用常量,因为保持与数据库的连接始终打开并不是最好的技术解决方案。我建议您创建一个处理数据库连接的函数。

有关常量和全局变量的讨论,请查看此线程: http ://productforums.google.com/forum/#!category-topic/apps-script/services/y7lB5AKcic0

问候, 布雷诺

于 2013-05-08T02:36:56.927 回答
0

您还可以在 doGet() 函数中创建一次连接,然后将该连接传递给脚本中的其他函数。

于 2013-05-09T14:25:28.153 回答