【发布时间】:2013-04-26 06:24:25
【问题描述】:
好的,我将在 https://developers.google.com/apps-script/jdbc 的教程代码上演示我的问题
function insert() {
var conn = Jdbc.getConnection("jdbc:mysql://<host>:<port>/<instance>", "user", "password");
conn.setAutoCommit(false);
var stmt = conn.prepareStatement("insert into person (lname,fname) values (?,?)");
var start = new Date();
for (var i = 0; i < 5000; i++) {
// Objects are accessed using 1-based indexing
stmt.setObject(1, 'firstName' + i);
stmt.setObject(2, 'lastName' + i);
stmt.addBatch();
}
var res = stmt.executeBatch();
conn.commit();
conn.close();
var endTime = new Date();
Logger.log("time is " + (endTime.getTime() - start.getTime()) + "ms");
Logger.log("res has " + res.length);
}
我来自斯洛伐克,在我更改此行后,我们有像 žťščľýá 这样的特殊字符
stmt.setObject(1, 'firstName' + i);
到
stmt.setObject(1, 'žťščľýá' + i);
我会得到????在我的数据库中。我的数据库和表中有 utf8_general_ci picture
我已经看到这个JDBC Service with MySQL : UTF-8 encoding / decoding 并尝试过Utilities.newBlob("").setDataFromString("foo", "UTF-8").getDataAsString("UTF-16") 和这个JDBC character encoding,很多人建议在我的连接链接之后使用?characterEncoding=utf8,但我会收到错误消息。
【问题讨论】: