Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana Anda mengubah tingkat isolasi SQL dari Python menggunakan MySQLdb?

Saya rasa ini tidak berfungsi untuk driver MySQLdb; Anda harus mengeluarkan kueri terpisah:

cur = conn.cursor()
cur.execute("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED")
cur.execute("SELECT @@session.tx_isolation")
print cur.fetchall()[0]
cur.execute("SELECT * FROM bar")
print cur.fetchall()
cur.execute("SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ")
cur.execute("SELECT @@session.tx_isolation")
print cur.fetchall()[0]

# output
('READ-UNCOMMITTED',)
(('foo',), ('bar',))
('REPEATABLE-READ',)

Metode execute() kursor MySQLdb hanya melihat kueri pertama hingga titik koma:

cur.execute("SELECT * FROM bar WHERE thing = 'bar'; SELECT * FROM bar")
print cur.fetchall()

# output
(('bar',),)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana Operator LIKE Bekerja di MySQL

  2. Bagaimana cara menyimpan Mata Uang Eropa di MySQL?

  3. Variabel tidak terdefinisi:pdo, panggil ke fungsi anggota prepare() pada null

  4. Cara cepat dan mudah untuk memigrasi SQLite3 ke MySQL?

  5. Pilih semua bulan dalam rentang tanggal tertentu, termasuk yang memiliki nilai 0