Я пытаюсь запустить запрос обновления внутри функции с помощью глобального курсора, который был установлен в операторе «с MySQLdb.connect» в основном корпусе. По какой-то причине обновление запросов в основной работе тела, хотя и запросы в функции не работают :( Есть ли способ, чтобы получить ошибку, потому что никто не генерируется,PyMysql Обновление запроса внутри функции с помощью глобального курсора
import MySQLdb
import sys
def updateFunction(data):
global cur
cur.execute("UPDATE1")
sys.exit(0)
if __name__=="__main__":
data="sample data, not important"
with MySQLdb.connect(host="localhost",user="user",passwd="pass",db="db") as cur:
cur.execute("UPDATE2")
updateFunction(data)
в этом примере UPDATE2 будет работать . и Update1 Wouldnt
Это требуется только, когда что-то вроде [это] (Http:. //dev.mysql. com/doc/refman/5.0/en/server-system-variables.html # sysvar_autocommit) используется для автоматического отключения 'autocommit' о новых соединениях. – jordanm
@jordanm Я этого не знал, я только использовал mysql с php до сих пор, и я havent должен был фиксировать обновления и вставки, спасибо. – Evan