【发布时间】:2020-03-11 16:07:17
【问题描述】:
有谁知道如何让命名实例工作,或者,它们是否受支持?
以下不起作用,它会产生: 异常:无法建立数据库连接。检查连接字符串、用户名和密码。
var conn = Jdbc.getConnection("jdbc:sqlserver://myserver.com\\SQLEXPRESS;databaseName=MyDatabase;","MyUser","MyPassword")
以下有效(假设 61570 是分配给实例 SQLEXPRESS 的端口):
var conn = Jdbc.getConnection("jdbc:sqlserver://myserver.com:61570;databaseName=MyDatabase;","MyUser","MyPassword")
据我所知,当您指定命名实例时,通常会在幕后发生一些握手:
- 联系服务器并获取命名实例的端口。
- 与返回的端口建立连接。
【问题讨论】:
-
我不相信你可以。如果你看官方JDBC documentation(Apps Script的JDBC服务只是一个包装器),看起来你必须明确定义端口号,否则默认为端口号3306。
-
对于一般的 Microsoft SQL Server JDBC 驱动程序,要使命名实例正常工作,您需要运行 SQL Server Browser 服务(并且它需要可远程访问)。不确定这是否与 Google Apps 脚本不同。
标签: google-apps-script jdbc google-sheets