用mybatis向mysql数据库插入一条数据后,然后查询出来。数据库里没有这条数据,但是程序通过查询语句却能查到这条数据
程序显示结果:
但是数据库就没能找到这条数据
认证高级PHP讲师
캐시도 아니고 데이터베이스도 아니고 마이바티스도 아닙니다.
데이터베이스는 이해하기 쉽습니다. 커밋하지 않은 데이터는 현재 트랜잭션에서만 찾을 수 있으며 다른 클라이언트에서는 찾을 수 없습니다.
mybatis의 캐시는 기본적으로 삽입, 삭제, 업데이트를 하면 캐시가 지워집니다.
그래서 답은 뻔합니다. 자동 커밋을 끄고 업데이트 작업을 데이터베이스에 커밋하지 않아서 클라이언트에서만 찾을 수 있다는 것입니다.
당신의 사진:
그것이 당신의 불륜의 이유가 아닐까요? 삽입 후 바로 조회했는데 아직 거래가 제출되지 않았기 때문인가요?
프로그램이 캐싱 메커니즘을 사용할 수 있습니다. 삽입한 데이터가 캐시에 있지만 아직 데이터베이스에 도달하지 않았을 수 있습니다.
거래가 제출되지 않았다는 의미일 수 있습니다
올바른 비즈니스 문제. 형님, 거래가 제출된 후에 보실 수 있습니다.
캐시도 아니고 데이터베이스도 아니고 마이바티스도 아닙니다.
데이터베이스는 이해하기 쉽습니다. 커밋하지 않은 데이터는 현재 트랜잭션에서만 찾을 수 있으며 다른 클라이언트에서는 찾을 수 없습니다.
mybatis의 캐시는 기본적으로 삽입, 삭제, 업데이트를 하면 캐시가 지워집니다.
그래서 답은 뻔합니다. 자동 커밋을 끄고 업데이트 작업을 데이터베이스에 커밋하지 않아서 클라이언트에서만 찾을 수 있다는 것입니다.
당신의 사진:
그것이 당신의 불륜의 이유가 아닐까요? 삽입 후 바로 조회했는데 아직 거래가 제출되지 않았기 때문인가요?
프로그램이 캐싱 메커니즘을 사용할 수 있습니다. 삽입한 데이터가 캐시에 있지만 아직 데이터베이스에 도달하지 않았을 수 있습니다.
거래가 제출되지 않았다는 의미일 수 있습니다
올바른 비즈니스 문제. 형님, 거래가 제출된 후에 보실 수 있습니다.