java - Spring jdbctemplate访问sqlite,遇到问题能读不能写

查看:254
本文介绍了java - Spring jdbctemplate访问sqlite,遇到问题能读不能写的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

能select出数据来,但是update、insert语句都无法起作用,也不报错。
比如以下代码,
中间执行了一个更新操作,但前后打印内容是一模一样的:

    public static void main(String[] args) {
        SQLiteDataSource source = new SQLiteDataSource();
        source.setUrl("jdbc:sqlite::resource:tester.db");

        JdbcTemplate jdbcTemplate = new JdbcTemplate(source);
        //查询
        System.out.println(jdbcTemplate.queryForList("select * from module"));// 打印:[{mid=1, name=模块1}, {mid=2, name=模块2}]
        //更新
        jdbcTemplate.update(" update module set name = 'aaa' where mid = 1 ");
        //再次查询
        System.out.println(jdbcTemplate.queryForList("select * from module"));// 打印:[{mid=1, name=模块1}, {mid=2, name=模块2}]
    }

请指点迷津,谢谢!

解决方案

试了下可以执行
[{mid=1, name=模块1}, {mid=2, name=模块2}]
18:52:19.713 [main] DEBUG org.springframework.jdbc.core.JdbcTemplate - Executing SQL update [ update module set name = 'aaa' where mid = 1 ]
18:52:19.715 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource
18:52:19.724 [main] DEBUG org.springframework.jdbc.core.JdbcTemplate - SQL update affected 1 rows
18:52:19.724 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils - Returning JDBC Connection to DataSource
18:52:19.724 [main] DEBUG org.springframework.jdbc.core.JdbcTemplate - Executing SQL query [select * from module]
18:52:19.724 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource
18:52:19.725 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils - Returning JDBC Connection to DataSource
[{mid=1, name=aaa}, {mid=2, name=模块2}]

这篇关于java - Spring jdbctemplate访问sqlite,遇到问题能读不能写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆