Rumah > pangkalan data > tutorial mysql > Mengapa Pertanyaan MySQL Saya daripada Python Mengembalikan Keputusan Tidak Konsisten?

Mengapa Pertanyaan MySQL Saya daripada Python Mengembalikan Keputusan Tidak Konsisten?

Mary-Kate Olsen
Lepaskan: 2024-11-07 08:28:03
asal
692 orang telah melayarinya

Why Are My MySQL Queries from Python Returning Inconsistent Results?

Pertanyaan MySQL daripada Python Menghasilkan Inkonsistensi

Pertanyaan anda berkemungkinan tidak mendapatkan semula data yang paling terkini kerana anda tidak melakukan perubahan kepada pangkalan data. Secara lalai, MySQL menetapkan tahap pengasingan kepada "BACA BOLEH DIULANG", yang bermaksud pertanyaan seterusnya dalam transaksi yang sama melihat petikan data awal dan bukannya sebarang perubahan yang dibuat semasa transaksi.

Untuk memastikan data anda siap. -sehingga kini, anda perlu melakukan sambungan selepas setiap pertanyaan. Ini melengkapkan transaksi semasa dan menyediakan transaksi seterusnya untuk mengambil perubahan terbaharu daripada pangkalan data.

Berikut ialah versi kod anda yang dikemas kini dengan komitmen yang diperlukan:

<code class="python"># Main loop
while True:

    # SQL query
    sql = "SELECT * FROM table"

    # Read the database, store as a dictionary
    mycursor = mydb.cursor(dictionary=True)
    mycursor.execute(sql)

    # Store data in rows
    myresult = mycursor.fetchall()

    # Transfer data into list
    for row in myresult:
        myList[int(row["rowID"])] = (row["a"], row["b"], row["c"])

        print(myList[int(row["rowID"])])

    # Commit changes!
    mydb.commit()
    print("---")
    sleep(0.1)</code>
Salin selepas log masuk

Dengan pengubahsuaian ini , kod anda kini akan mendapatkan semula data terkini daripada pangkalan data semasa setiap gelung pertanyaan.

Atas ialah kandungan terperinci Mengapa Pertanyaan MySQL Saya daripada Python Mengembalikan Keputusan Tidak Konsisten?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan