我在我的google apps脚本中使用文档属性来存储mysql数据库连接字符串并获取错误TypeError:无法在第2行调用null的方法“setProperties”,不知道原因可能是什么。
dbmysqlconndev = PropertiesService.getDocumentProperties();
dbmysqlconndev.setProperties({
'mysqlUrl': 'jdbc:mysql://dbserverdev;databaseName=sample',
'mysqlUser': 'username',
'mysqlPassword': 'password'});
var keys = dbmysqlconndev.getKeys();
for (var i = 0; i < keys.length; i++) {
dbmysqlconndev.getProperty(keys[i]);
}
var mysqlurl = dbmysqlconndev.getProperty(keys[0]);
var mysqlusr = dbmysqlconndev.getProperty(keys[1]);
var mysqlpwd = dbmysqlconndev.getProperty(keys[2]);
答案 0 :(得分:0)
原因是,正如错误消息所示,dbmysqlconndev
为空。现在,PropertiesService.getDocumentProperties()
会返回null吗?我们来看看documentation:
仅当脚本已发布并作为加载项执行或者绑定到Google文件类型时才可用。当文档属性不可用时,此方法返回null。
这就是原因:您是否可以将其作为独立脚本执行。使用getScriptProperties
代替getDocumentProperties
。