6

AppsScriptを使用してGoogleCloudSQLDBに接続してクエリを実行する方法があるかどうかを知りたいです。

多くの投稿を読みましたが、DBCloudSQLにアクセスする唯一の方法はAppEngineを使用することだと思われます。

誰かが解決策を知っていますか?ありがとうございました

4

4 に答える 4

12

はい、JDBCを介してアプリスクリプトをGoogleCloudSQLに接続することは明らかに可能です。

GoogleAppsScriptからのGoogleCloudSQLインスタンスへの接続: Google Apps Scriptには、Jdbcサービスを使用してJDBCを介してデータベースに接続する機能があります。

承認: インスタンスに接続するには、ユーザーは関連するGoogleAPIコンソールプロジェクトのメンバーである必要があります。オプションで、ユーザー名とパスワードを指定して、よりきめ細かい権限を適用できます。アクセス制御の詳細については、アクセス制御のドキュメントを参照してください。

Google Cloud SQLデータベースへのアクセス: 特別なメソッドgetCloudSqlConnectionを使用して、AppsScriptでこれらのデータベースに接続できます。このメソッドはgetConnectionと同じように機能しますが、GoogleCloudSQL接続文字列のみを受け入れます。

var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://instance_name/database_name");

接続すると、MySQLデータベースに対して作業するために使用するのと同じコードを使用できます。

データベースへの書き込み: このコードは、データベースのpersonテーブルにレコードを挿入します

function insert() {
  var fname="First Name"
  var lname="Last Name"
  var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://instance_name/database_name");
  var stmt = conn.createStatement()
  var query="insert into person(FNAME,LNAME) values('"+fname+"','"+lname+"')"
  stmt.execute(query)
  stmt.close()
  conn.close()
 }

データベースからの読み取り: このコードはデータベースから読み取ります。

function read() {
  var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://instance_name/database_name");
  var stmt = conn.createStatement()
  var query="select FNAME, LNAME from person"
  var rs= stmt.executeQuery(query)
  while(rs.next()){
    Logger.log("First Name : "+rs.getString(1)+" , "+"Last Name : "+rs.getString(2))
  }
  rs.close()
  stmt.close()
  conn.close()
 }
于 2013-07-23T05:09:40.130 に答える
2

Google Developersコンソールで、[概要]をクリックし、ページの中央に移動して、[クラウドSQLインスタンスに接続する方法]をクリックし、リンクをクリックします。次に、言語のJavaを選択し、外部ネットワークからの接続が見つかるまでダウンし、URLを見つけます。

次のようになります。

url = "jdbc:mysql://your_address?user=root"; 

IPv4が有効になっている場合(000.000.000.00形式の数値)

?user=root"を省略してURLをコピーします。

に貼り付けますvar conn = Jdbc.getConnection("jdbc:mysql://your_address/

追加/db_nameして終了したコード行は、次のようになります。

var conn = Jdbc.getConnection("jdbc:mysql://your_address/db_name”, user, userPwd);

覚えておくべき2つのこと

  1. AppScriptNetworkIDの最初のIDを許可する

  2. 事前にデータベースを作成してAppsScriptから書き込むと、作業がはるかに楽になります。

于 2015-10-10T05:29:13.530 に答える
0

現在、GASからGoogle Cloud SQL DBに接続するためのソリューションはなく、いつ導入されるかは明確ではありません。これが課題追跡システムの問題であり、Google CloudSQLGroupでのこの問題に関するディスカッションです

于 2012-09-12T15:52:20.240 に答える
-2

Google Cloud Sql DBに接続する唯一の方法は、AppEngineを使用することだと思います。

于 2012-09-12T15:30:35.567 に答える