我正在尝试使用 Google App Script 将 Google 表格连接到托管在 Azure (DBaaS) 上的 SQL Server 实例。尽管我多次尝试修改代码,但我不断收到一条错误消息,指出我的连接字符串无效。我可以从我的本地计算机使用 Microsoft SQL Server Management Studio 和 HeidiSQL 连接到 Azure 上的这个 SQL Server 实例。请注意,我已将每个 IPp 地址(0.0.0.0 到 255.255.255.255)列入白名单,以确保这不是阻止我连接的防火墙问题。
//var conn = Jdbc.getConnection('jdbc:sqlserver:MyDBName.database.windows.net:1433/MyDBName', 'MyDBUserName', 'MyDBPassword');
// SECOND ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net:1433;'+ 'databaseName=MyDBName;user=MyDBUserName;password=MyDBPassword;');
// THIRD ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net/MyDBName:1433', 'MyDBUserName', 'MyDBPassword');
// FOURTH ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('MyDBName.database.windows.net','MyDBUserName', 'MyDBPassword');
// FIFTH ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net', {user:'MyDBUserName', password:'MyDBPassword'});
// SIXTH ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('MyDBName.database.windows.net', {user:'MyDBUserName', password:'MyDBPassword'});
// SEVENTH ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net:1433/MyDBName', {user:'MyDBUserName', password:'MyDBPassword'});
// EIGHT ITERATION OF CONNECTION STRING
//https://developers.google.com/apps-script/reference/jdbc/jdbc
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net/MyDBName:1433', {user:'MyDBUserName', password:'MyDBPassword'});
// NINTH ITERATION OF CONNECTION STRING - Now I'm just throwing anything at the wall and seeing what sticks!
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net/MyDBName;user=MyDBUserName;password=MyDBPassword');
// TENTH ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('jdbc:mysql://MyDBName.database.windows.net/MyDBName:1433', {user:'MyDBUserName', password:'MyDBPassword'});
// ELEVENTH ITERATION OF CONNECTION STRING
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net:1433;databaseName=MyDBName','MyDBUserName','MyDBPassword');
//TWELVTH
//var conn = jdbc:sqlserver://MyDBName.database.windows.net;database=MyDBName;user=MyDBUserName;password=MyDBPassword;
// THIRTEENTH
//var conn = Jdbc.getConnection('jdbc:sqlserver://MyDBName.database.windows.net;user=MyDBUserName;password=MyDBPassword;databaseName=MyDBName;');
// FOURTEENTH
//var conn = Jdbc.getConnection("jdbc:sqlserver//MyDBName.database.windows.net:1433;databaseName=MyDBName;user=MyDBUserName;password=MyDBPassword");
// FIFTEENTH
//var conn = Jdbc.getConnection("jdbc:sqlserver://MyDBName.database.windows.net:1433;databaseName=MyDBName","MyDBUserName","MyDBPassword");
// SIXTEENTH
// http://stackoverflow.com/questions/18978380/error-when-connecting-to-mssql-server-with-google-apps-script-via-jdbc?rq=1
//var conn = Jdbc.getConnection("jdbc:sqlserver://NumericalIPAddress:1433;" + "databaseName=MyDBName;user=MyDBUserName;password=MyDBPassword;");
// SEVENTEENTH
// same as above with one less semicolon
//var conn = Jdbc.getConnection("jdbc:sqlserver://NumericalIPAddress:1433;" + "databaseName=MyDBName;user=MyDBUserName;password=MyDBPassword");
//EIGHTEENTH
// http://stackoverflow.com/questions/15440939/querying-sql-server-with-google-apps-script-via-jdbc
var conn = Jdbc.getConnection("jdbc:sqlserver://MyDBName.database.windows.net:1433;databaseName=MyDBName","MyDBUserName","MyDBPassword");
最佳答案
您可以在门户中找到应该用于数据库的确切连接字符串。单击当前门户 (https://manage.windowsazure.com) 中的数据库,您应该会在下面看到一个“连接到您的数据库”部分,其中有一个链接显示“查看 ADO .Net、ODBC、PHP 的 SQL 数据库连接字符串,和 JDBC。
或者,如果您使用的是新版 Azure 门户 (https://portal.azure.com),您可以通过浏览所有 > SQL 数据库 > MyDBName > 显示数据库连接字符串找到连接字符串。
它为我提供的示例如下所示: jdbc:sqlserver://server21.database.windows.net:1433;database=Test;user=myuser@server21;password={your_password_here};encrypt=true;hostNameInCertificate=*.database.windows.net;loginTimeout=30;
关于sql-server - 将 Google App Script 连接到 Azure 上的 SQL Server (DBaaS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30971835/