>  Q&A  >  본문

java - mybatis 插入一条数据时,数据库没能找到这条数据,但是程序却可以查询出这条数据

用mybatis向mysql数据库插入一条数据后,然后查询出来。数据库里没有这条数据,但是程序通过查询语句却能查到这条数据

程序显示结果:

但是数据库就没能找到这条数据

PHP中文网PHP中文网2741일 전437

모든 응답(6)나는 대답할 것이다

  • 大家讲道理

    大家讲道理2017-04-18 09:54:06

    캐시도 아니고 데이터베이스도 아니고 마이바티스도 아닙니다.

    데이터베이스는 이해하기 쉽습니다. 커밋하지 않은 데이터는 현재 트랜잭션에서만 찾을 수 있으며 다른 클라이언트에서는 찾을 수 없습니다.

    mybatis의 캐시는 기본적으로 삽입, 삭제, 업데이트를 하면 캐시가 지워집니다.

    그래서 답은 뻔합니다. 자동 커밋을 끄고 업데이트 작업을 데이터베이스에 커밋하지 않아서 클라이언트에서만 찾을 수 있다는 것입니다.

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-18 09:54:06

    당신의 사진:

    그것이 당신의 불륜의 이유가 아닐까요? 삽입 후 바로 조회했는데 아직 거래가 제출되지 않았기 때문인가요?

    회신하다
    0
  • 迷茫

    迷茫2017-04-18 09:54:06

    프로그램이 캐싱 메커니즘을 사용할 수 있습니다. 삽입한 데이터가 캐시에 있지만 아직 데이터베이스에 도달하지 않았을 수 있습니다.

    회신하다
    0
  • 黄舟

    黄舟2017-04-18 09:54:06

    에 커밋이 없어서 그런 것 같아요.

    회신하다
    0
  • 阿神

    阿神2017-04-18 09:54:06

    거래가 제출되지 않았다는 의미일 수 있습니다

    회신하다
    0
  • ringa_lee

    ringa_lee2017-04-18 09:54:06

    올바른 비즈니스 문제. 형님, 거래가 제출된 후에 보실 수 있습니다.

    회신하다
    0
  • 취소회신하다