1

我正在尝试使用 Google Apps 开发人员参考 ( https://developers.google.com/apps-script/jdbc )中的示例代码从 Google Apps 电子表格打开连接但没有成功

function insert() {
    var conn = Jdbc.getConnection("jdbc:mysql://localhost:3306/test", "a", "a");

错误:无法建立数据库连接。检查连接字符串、用户名和密码。(第 56 行)

我尝试用我的特定 IP 地址替换“localhost”。

我能够使用 Access、ODBC 和上述凭据成功连接到我的数据库,所以我知道这是 JDBC / Google-apps-script 问题。

CLASSPATH 指向正​​确的 jar 文件,如下所示:

C:\>echo %CLASSPATH%
.;C:\Program Files\Java\mysql-connector-java-5.1.22\mysql-connector-java-5.1.22-
bin.jar

我不确定是否必须在我的脚本或 google-doc-spreadsheet 中或在 Windows 中执行其他任何操作才能正确设置。

我从我读过的一件事中了解到,没有必要像这样安装 JDBC 驱动程序,但我希望能确认一下。

我花了很长时间在互联网上搜索解决方案,但无济于事。

我无法诊断问题出在哪里,并且非常感谢任何人在这方面可能有的任何想法。

4

1 回答 1

0

问题是它localhost被用作主机。Google Apps 脚本在 Google 服务器而不是本地计算机上执行。这意味着脚本无法访问localhost并且错误是合乎逻辑的。

要消除该错误,必须让 SQL Server 可以在本地网络(Internet 上的公共网络)之外访问。它可以是在防火墙后面转发的 MySQL 端口或第三部分公共 SQL 服务。

在互联网上搜索,我发现了一些公共 MySQL 服务器,但我不知道它们是否在线(链接 #1链接 #2链接 #3

更新 00:JDBC 服务有一个错误,无法将主机名解析为 IP。我尝试使用以下代码进行测试。它与数据库建立连接。

function test() {
  var connection = Jdbc.getConnection("jdbc:mysql://193.62.203.76:3306/", "anonymous", "");
  debugger;
}
于 2012-10-31T06:24:48.677 回答