MySQLdb
dường như cho phép điều này xảy ra, bạn chỉ cần gọi cursor.nextset()
để chuyển qua các tập kết quả được trả về.
db = conn.cursor()
db.execute('SELECT 1; SELECT 2;')
more = True
while more:
print db.fetchall()
more = db.nextset()
Nếu bạn muốn hoàn toàn chắc chắn rằng hỗ trợ cho điều này đã được bật và / hoặc tắt hỗ trợ, bạn có thể sử dụng một cái gì đó như sau:
MYSQL_OPTION_MULTI_STATEMENTS_ON = 0
MYSQL_OPTION_MULTI_STATEMENTS_OFF = 1
conn.set_server_option(MYSQL_OPTION_MULTI_STATEMENTS_ON)
# Multiple statement execution here...
conn.set_server_option(MYSQL_OPTION_MULTI_STATEMENTS_OFF)