【发布时间】:2017-06-10 23:36:46
【问题描述】:
我在 SQLYog 中有一个表,其中一列是 varchar 限制为 200 长度。 我为插入编写了下面的方法,但是在测试代码时,“名称”列没有被数据库中的数据填充。
@Override
public void insert(final List<InfoRow> rows) {
String sql = "INSERT INTO info_table (ID, NAME, AGE) VALUES (?, SUBSTRING(?, 0, 200), ?)";
jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
@Override
public void setValues(PreparedStatement ps, int i)
throws SQLException {
InfoRow row= rows.get(i);
ps.setInt(1, (int) row.getId());
ps.setString(2, row.getName());
ps.setInt(3,(int) row.getAge());
}
@Override
public int getBatchSize() {
return rows.size();
}
});
}
插入时验证“名称”大小的正确方法是什么?
谢谢!
【问题讨论】:
标签: java spring sql-insert jdbctemplate sqlyog