行,所以我会从https://developers.google.com/apps-script/jdbcJDBC MySQL的字符编码
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);
我会得到????在我db.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
,但我会得到错误信息。