Следует ли повторно использовать объект курсора или создать новый объект для каждого запроса?
Повторное использование курсора:
# we're going to connect to s3 and mysql
db = mysql_connect(host="localhost",
user="user",
passwd="pass",
database="db")
# Reusing the cursor
cursor = db.cursor()
# loop through all the files in the bucket one by one
for key in bucket.get_all_keys():
# the document id is the filename in the s3 bucket
doc_id = key.name.split("/")[-1]
cursor.execute("SELECT document_name FROM laws_docs WHERE id = %i", (doc_id,))
doc_name = cursor.fetchone()[0]
cursor.close()
- или -
Каждый раз новый курсор:
# we're going to connect to s3 and mysql
db = mysql_connect(host="localhost",
user="user",
passwd="pass",
database="db")
# loop through all the files in the bucket one by one
for key in bucket.get_all_keys():
# new cursor
cursor = db.cursor()
# the document id is the filename in the s3 bucket
doc_id = key.name.split("/")[-1]
cursor.execute("SELECT document_name FROM laws_docs WHERE id = %i", (doc_id,))
doc_name = cursor.fetchone()[0]
ursor.close()
Это вообще имеет значение?Этот цикл будет выполняться не менее 50 000 раз.