处于同一个事务中的查询数据从哪里来呢?

问题描述

我在使用IBaties操作数据库的时候,在同一个方法中,先添加了数据,然后再去查询这些添加的数据,可是此时事务并没有提交,而且我打印的SQL语句去数据库中查询也没有值,但是,在程序中执行的查询方法所赋予的对象里面却是有值的,那么这个值是从哪里查询出来的呢? 问题补充:chenxiang105 写道

解决方案

这是默认配置好不好 一般是不要改的,你那个属于正常现象了解取数据的模式.内存的速度最快 所以现在内存中找...一般框架搭建起来,配置都是设定好了的 开发过程中不要轻易去改.
解决方案二:
没有commit之前的数据在缓存中存在. 查询数据效率如果数据库数据没有发生改变 会直接在缓存中取数据.而不会去数据库查, 这更配置的相关应该在选择模式的时候选择的auto.如果你在添加之后手动去数据库删一条数据你就会看到查询的sql出现了

时间: 2024-12-25 17:52:04

处于同一个事务中的查询数据从哪里来呢?的相关文章

mysql中不同事务隔离级别下数据的显示效果

  事务是一组原子性的SQL查询语句,也可以被看做一个工作单元.如果数据库引擎能够成功地对数据库应用所有的查询语句,它就会执行所有查询,如果任何一条查询语句因为崩溃或其他原因而无法执行,那么所有的语句就都不会执行.也就是说,事务内的语句要么全部执行,要么一句也不执行. 事务的特性:acid,也称为事务的四个测试(原子性,一致性,隔离性,持久性) automicity:原子性,事务所引起的数据库操作,要么都完成,要么都不执行 consisitency:一致性,事务执行前的总和和事务执行后的总和是不

PostgreSQL 长事务中DML产生的数据无法被及时纳入统计信息导致的问题

PostgreSQL最低的事务隔离级别是read committed,因此在事务中产生的数据变化,在外部是不可见的,包括auto analyze也是不可见的.例子: postgres=# show autovacuum; autovacuum ------------ on (1 row) postgres=# show autovacuum_naptime ; autovacuum_naptime -------------------- 1s (1 row) 会话A: postgres=#

mybaits参数是英文可以查询数据 ,输入中文查询不出来,求大神帮忙

问题描述 mybaits参数是英文可以查询数据 ,输入中文查询不出来,求大神帮忙 用的是mysql数据库 控制台打印出来的sql 放到数据库中可以查询出来数据, 参数传到mybaits 中是中文的 为什么查询不出来啊 求大神帮忙 <select id="getSiteList" parameterType="hashmap" resultType="hashmap"> select * from tb_msg_content wher

sql查询-sql 同一个表中如何把两条数据合并成一条显示,并显示两条数据的全部内容

问题描述 sql 同一个表中如何把两条数据合并成一条显示,并显示两条数据的全部内容 数据库是 sqlserver2008的环境. 是一个列变行的问题 ,请大师帮忙啊. 比如 table表中 字段: id name bianhao address shijian 1 张三 001 北京 2013-12-1 2 李四 001 北京 2013-12-1 最后显示的内容为: 字段: name1 name2 bianhao address shijian 张三 李四 001 北京 2013-12-1 合并

hibernate-Hibernate 在同一个事务里执行插入之后懒加载查询问题

问题描述 Hibernate 在同一个事务里执行插入之后懒加载查询问题 这样一段代码:他们是在同一个事务下的 public class ObjectA{ private String id; private ObjectB objectB; ...get/set方法:}public void functionA(){ ObjectA a = new ObjectA(); dao.add(a); functionB(a.getId); dao.commit();}public void funct

spring事务-spring如何在只读事务中提交数据

问题描述 spring如何在只读事务中提交数据 现在有个需求,我现在要去查询一个对象,如果这个对象不存在在,就初始创建一个,但这个查询是只读事务,没办法提交.有什么解决方案? 一种方法就是将这个查询方法加读写事务,这个不是我希望的,因为这个方法大部分时候都是查询的.大家有什么解决方案可以在只读事务中转换为读写事务? 解决方案 只读事务中创建不合适.是不是可以在只读事务中通过消息等方式发送给读写事务进行数据添加. 关键添加后的数据是否在只读事务中要使用.如果需要使用那就得吧只读事务改成读写事务了.

使用SQL查询DB2 9中的XML数据_DB2

正在看的db2教程是:使用SQL查询DB2 9中的XML数据. 虽然 DB2 的混合体系结构与之前的版本有很大的不同,但是要利用它的新 XML 功能并不难.如果您已经熟悉 SQL,那么很快就可以将这方面的技能转化到对存储在 DB2 中的本地 XML 数据的处理上.通过本文就可以知道如何实现这一点. DB2 Viper(就是DB2 9)中的 XML 特性包括新的存储管理.新的索引技术以及对查询语言的支持.在本文中,学习如何使用 SQL 或带 XML 扩展的 SQL(SQL/XML)查询 DB2 X

使用SQL查询DB2 9中的XML数据

虽然 DB2 的混合体系结构与之前的版本有很大的不同,但是要利用它的新 XML 功能并不难.如果您已经熟悉 SQL,那么很快就可以将这方面的技能转化到对存储在 DB2 中的本地 XML 数据的处理上.通过本文就可以知道如何实现这一点. DB2 Viper(就是DB2 9)中的 XML 特性包括新的存储管理.新的索引技术以及对查询语言的支持.在本文中,学习如何使用 SQL 或带 XML 扩展的 SQL(SQL/XML)查询 DB2 XML 列中的数据.接下来的文章将讨论 DB2 中新引入的对新兴的

JAVA中对存储过程的调用方法(五) 查询数据的存储过程(模糊查询)

五.查询数据的存储过程(模糊查询) -----------------存储过程--------------------- create procedure FindCusts @cust varchar(10) as select customerid from orders where customerid like '%'+@cust+'%' ---------------执行--------------------------- execute FindCusts 'alfki' ----