NHibernate 查询视图数据与数据库数据不一致
2017-03-01 10:57
393 查看
NHibernate 查询数据与数据库数据不一致
开发中遇到,当更改一条数据之后,查询到的视图列表数据没有更新,实际数据库中数据已经更改,视图中的数据也几经更改。初步怀疑是 session 缓存的问题。
项目是winform应用程序,刚开始的时候使用的是和web应用中的配置相同。但是在web应用中没有遇到这种问题。
可能的原因:
session 的创建和销毁时和 线程绑定在一起的。
每次web请求,都会创建一个session绑定到当前线程。web请求结束之后session释放。
winform中,线程只创建一次,即项目启动时。
此时更改表数据之后,如果没有清空session缓存,那么查询的视图,实际上之后都是使用的session缓存的数据。
解决方案:
在更新表数据之后,调用
session.Clear()
相关文章推荐
- 数据库物化视图刷新SQL命令和查询被delete掉的数据
- 数据库系统其一:视图及数据查询
- hibernate查询出的数据和数据库不一致
- 查询某个数据库下所有用到某张数据表的数据库对象: 存储过程 或 视图
- 查询得到当前数据库的所有数据表名 和 视图
- Hibernate 查询结果与数据库中的数据不一致
- [转]数据库物化视图刷新SQL命令和查询被delete掉的数据
- 查询得到当前数据库的所有数据表名 和 视图
- hibernate查询出的数据和数据库不一致
- 数据库日期与本机日期不一致时出现的数据查询问题
- 10万数据量的数据库查询效率比较 纯sql语句 和 view 视图
- 查询数据库中满足条件的特定行数据
- 查询其它数据库数据
- Sqlserver 在查询分析器里如何访问远程的的数据库,进行数据查询更新等操作。
- 数据库语句大全之查询前若干名数据/周期日期/大小/逻辑/重复记录查询
- 在SharePoint Designer 2007中使用交叉列表查询的数据视图
- 加快从大容量的数据库中提取数据(查询)
- 面向对象的NHibernate数据查询语言-HQL
- 面向对象的NHibernate数据查询语言-HQL
- 加快从大容量的数据库中提取数据(查询)