还未详细分析MyBatis慢在哪里,先上小数据量对比图:
controller请求处理:
@RequestMapping("/batch-insert-mybatis/{size}")
@ResponseBody
public String batchInsertUserInfoByMybatis(@PathVariable int size) {
return userService.batchInsertUserByMybatis(size);
}
@RequestMapping("/batch-insert-jdbc/{size}")
@ResponseBody
public String batchInsertUserInfoByJdbc(@PathVariable int size) {
return userService.batchInsertUserByJdbc(size);
}
service处理:
private final Log logger = LogFactory.getLog(getClass());
@Autowired
private UserMapper userMapper;
@Autowired
private UserJdbcDao userJdbcDao;
public String batchInsertUserByMybatis(int size){
List<User> list = getUsers(size);
long startTime = System.currentTimeMillis();
userMapper.batchInsert(list);
logger.info(" #####batchInsert "+size+" Users ByMybatis total time : "
+ (System.currentTimeMillis() - startTime) + " 毫秒 #####");
return "SUCCESS";
}
public String batchInsertUserByJdbc(int size) {
List<User> list = getUsers(size);
long startTime = System.currentTimeMillis();
userJdbcDao.batchInsert(list);
logger.info(" #####batchInsert "+size+" Users ByJdbc total time : "
+ (System.currentTimeMillis() - startTime) + " 毫秒 #####");
return "SUCCESS";
}
private List<User> getUsers(int size) {
List<User> list = new ArrayList<>();
for (int i = 6; i < size; i++) {
User user = new User();
user.setName("who" + i);
user.setAge(String.valueOf(i));
user.setPassword("secret" + i);
list.add(user);
}
return list;
}
MyBatis示例:
public interface UserMapper {
void batchInsert(List<User> list);
}
<insert id="batchInsert" parameterType="List" useGeneratedKeys="false">
insert all
<foreach collection="list" item="poi" index="index" separator="" >
into user1 (name, age,password) values (#{poi.name}, #{poi.age}, #{poi.password})
</foreach>
SELECT * FROM dual
</insert>
Jdbc示例
@Service
public class UserJdbcDao extends JdbcTemplate{
@Resource(name="dataSource")
public void init( DataSource dataSource) {
super.setDataSource(dataSource);
}
public void batchInsert(List<User> list) {
String sql = " insert into user1 (name, age,password) values (?, ?, ?)";
List<Object[]> batchArgs = new ArrayList<Object[]>();
for (User poi : list) {
Object[] args = {poi.getName(), poi.getAge(), poi.getPassword()};
batchArgs.add(args);
}
batchUpdate(sql, batchArgs);
}
}
然而,为什么MyBatis慢这么多,特别是首次执行的时候?
参考:
JDBC实现往MySQL插入百万级数据 - 酒香逢 - 博客园
MyBatis-spring和spring JDBC批量插入Mysql的效率比较-pudn.com
Mybatis与JDBC批量插入MySQL数据库性能测试及解决方案 - 竹马今安在 - 博客园
而且MyBatis参数不能超1千,只能分批执行,否则报ORA-24335异常,如下:
2022-06-11 13:37:48.651 INFO 47544 --- [nio-8090-exec-7] o.s.b.f.xml.XmlBeanDefinitionReader : Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2022-06-11 13:37:48.702 INFO 47544 --- [nio-8090-exec-7] o.s.jdbc.support.SQLErrorCodesFactory : SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase, Hana]
2022-06-11 13:37:48.719 ERROR 47544 --- [nio-8090-exec-7] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.jdbc.UncategorizedSQLException:
### Error updating database. Cause: java.sql.SQLException: ORA-24335: cannot support more than 1000 columns
### The error may involve cn.no7player.mapper.UserMapper.batchInsert-Inline
### The error occurred while setting parameters
### SQL: insert all into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) into user1 (name, age,password) values (?, ?, ?) SELECT * FROM dual
### Cause: java.sql.SQLException: ORA-24335: cannot support more than 1000 columns
; uncategorized SQLException for SQL []; SQL state [99999]; error code [24335]; ORA-24335: cannot support more than 1000 columns
; nested exception is java.sql.SQLException: ORA-24335: cannot support more than 1000 columns
] with root cause
oracle.jdbc.OracleDatabaseException: ORA-24335: cannot support more than 1000 columns
at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:498)
at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1054)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:623)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:226)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:59)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:910)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1119)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3780)
at oracle.jdbc.driver.T4CPreparedStatement.executeInternal(T4CPreparedStatement.java:1343)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3887)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1079)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:44)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:69)
at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:48)
at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:105)
at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:71)
at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:152)
at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:358)
at com.sun.proxy.$Proxy35.insert(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:240)
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:51)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
at com.sun.proxy.$Proxy57.batchInsert(Unknown Source)
at cn.player.service.UserService.batchInsertUserByMybatis(UserService.java:36)
at cn.player.controller.UserController.batchInsertUserInfoByMybatis(UserController.java:38)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:776)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:869)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.boot.actuate.autoconfigure.EndpointWebMvcAutoConfiguration$ApplicationContextHeaderFilter.doFilterInternal(EndpointWebMvcAutoConfiguration.java:295)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:102)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.boot.actuate.autoconfigure.MetricsFilter.doFilterInternal(MetricsFilter.java:68)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:750)
所以还需以1000为单位分批新增,修改如下: