Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để bạn thay đổi mức cách ly SQL từ Python bằng MySQLdb?

Tôi không nghĩ rằng điều này hoạt động cho trình điều khiển MySQLdb; bạn sẽ phải đưa ra các truy vấn riêng biệt:

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',)

Phương thức execute () của con trỏ MySQLdb chỉ thấy truy vấn đầu tiên cho đến dấu chấm phẩy:

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. MySqli Lệnh không đồng bộ; bạn không thể chạy lệnh này bây giờ

  2. Chuyển đổi định dạng ngày của Hoa Kỳ sang định dạng ngày ANSI SQL (YYYY-mm-dd)

  3. Chèn / cập nhật chức năng trợ giúp bằng PDO

  4. SQL Hiển thị bản ghi gần đây nhất trong GROUP BY?

  5. Kiểm tra nhiều cột cho một giá trị