Fra*_*eca 5 google-apps-script google-cloud-sql
我想知道现在是否有使用应用程序脚本连接到我的Google Cloud SQL DB以插入/检索记录或执行查询的方法.我阅读了很多帖子,看来访问DB Cloud SQL的唯一方法就是使用appengine.
有人知道解决方案吗?谢谢
Nee*_*eel 11
是的,显然可以通过JDBC将应用程序脚本与Google Cloud SQL连接起来.
与Google Cloud SQL实例的连接来自Google Apps脚本: Google Apps脚本可以通过JDBC与Jdbc服务建立数据库连接.
授权: 为了连接到实例,用户必须是关联的Google API控制台项目的成员.(可选)可以指定用户名和密码以应用更细粒度的权限.要了解有关访问控制的更多信息,请参阅访问控制文档
访问Google Cloud SQL数据库: 我们可以使用特殊方法getCloudSqlConnection连接到Apps脚本中的这些数据库.此方法与getConnection的工作方式相同,但只接受Google Cloud SQL连接字符串.
var conn = Jdbc.getCloudSqlConnection("jdbc:google:rdbms://instance_name/database_name");
Run Code Online (Sandbox Code Playgroud)
连接后,您可以使用与用于对任何MySQL数据库相同的代码.
写入数据库: 此代码将在数据库中的人员表中插入记录
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()
}
Run Code Online (Sandbox Code Playgroud)
从数据库 读取:此代码将从数据库中读取.
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()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3858 次 |
| 最近记录: |