Meh*_*had 6 google-sheets google-apps-script google-cloud-sql google-forms
我是Google表单和Google Apps脚本的新手.我有十个Google表单,在提交表单时,他们会填充相应的Google表格.
现在,这就是我想要的,在提交表单时,我希望该信息也存储在云SQL数据库中.将实现哪些步骤?
Mog*_*dad 11
接受回复并将其复制到电子表格的Google表单的常规数据流如下所示:
您有两个机会使用表单提交触发器来复制Cloud SQL数据库中的表单响应; 您可以通过Google表单表单提交事件或Google表格表单提交事件触发.
无论哪种方式,您将拥有一个为每个表单提交调用的脚本,以及一个包含响应值的事件对象.您的触发器功能应使用JDBC连接到数据库 - 该链接包含一个介绍高亮显示的介绍.
假设我们有一个表格,提出两个问题,"姓名"和"年龄".这将导致我们的电子表格中有3列; "时间戳"加上每个问题一个.
为了与之匹配,我们设置了具有相同三列的Cloud SQL数据库.
写入Cloud SQL数据库的Google表格表单提交触发器功能看起来像这个未经测试的代码:
// Replace the variables in this block with real values.
var address = 'database_IP_address';
var user = 'user_name';
var userPwd = 'user_password';
var db = 'database_name';
var dbUrl = 'jdbc:mysql://' + address + '/' + db;
// Receive form response and replicate to a row in SQL table
function handleFormSubmit( event ) {
var conn = Jdbc.getConnection(dbUrl, user, userPwd);
var stmt = conn.prepareStatement('INSERT INTO entries '
+ '(Timestamp, Name, Age) values (?, ?, ?)');
stmt.setString(1, event.namedValues['Timestamp']);
stmt.setString(2, event.namedValues['Name']);
stmt.setString(3, event.namedValues['Age']);
stmt.execute();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6118 次 |
| 最近记录: |