【发布时间】:2014-05-08 04:21:20
【问题描述】:
好吧,这让我发疯了。我正在开发一个 Google Apps 脚本,该脚本将电子表格作为输入并将每一行写入 Google Cloud SQL 服务器,但由于某种原因,“日期”列会引发以下错误:
Invalid parameter for setObject type <?>
我一直在试图弄清楚它,我知道它与 JDBC / SQL 中的日期格式有关,听起来我需要从电子表格中转换日期——我猜这是一个字符串比如 '5/7/2014' (谷歌电子表格默认格式化日期的方式)——作为日期数据类型,但我不知道该怎么做。代码如下:
var conn = Jdbc.getCloudSqlConnection('mydb');
conn.setAutoCommit(false);
var stmt = conn.prepareStatement('INSERT INTO my_table (sale_date) values (?);');
stmt.setObject(1, date_variable); //In the Spreadsheet this would look like "5/7/2014"
stmt.addBatch();
var res = stmt.executeBatch();
conn.commit();
conn.close();
我是否需要编写一个函数来解析 Google 电子表格日期并将其转换为 SQL DATE 数据类型,如果需要,如何操作?似乎通过一个函数运行每个日期来转换它会使我的脚本变慢很多。
感谢您的帮助。
【问题讨论】:
标签: sql date jdbc google-apps-script