Đây là một bảng InnoDB, phải không? InnoDB là công cụ lưu trữ giao dịch. Đặt autocommit thành true có thể sẽ khắc phục được hành vi này cho bạn.
conn.autocommit(True)
Ngoài ra, bạn có thể thay đổi mức cô lập giao dịch. Bạn có thể đọc thêm về điều này tại đây: http:// dev .mysql.com / doc / refman / 5.0 / en / set-transaction.html
Lý do cho hành vi này là bên trong một giao dịch duy nhất, các lần đọc cần phải nhất quán. Tất cả các lần đọc nhất quán trong cùng một giao dịch đọc ảnh chụp nhanh được thiết lập bởi lần đọc đầu tiên. Ngay cả khi bạn script chỉ đọc bảng thì đây cũng được coi là một giao dịch. Đây là hành vi mặc định trong InnoDB và bạn cần thay đổi điều đó hoặc chạy conn.commit () sau mỗi lần đọc.
Trang này giải thích điều này một cách chi tiết hơn: http:/ /dev.mysql.com/doc/refman/5.0/en/innodb-consists-read.html