1
我有腳本A
:含義使用額外的循環
...
cursor.execute('SELECT col1, col2 FROM tableA')
rows = cursor.fetchall()
for row in rows:
statement = 'INSERT INTO tableB (col1, col2) VALUES (%s, %s)'
args = row.col1, row.col2
cursor.execute(statement, args)
和文字B
:
...
columns = []
cursor.execute('SELECT col1, col2 FROM tableA')
rows = cursor.fetchall()
for row in rows:
column_object = [row.col1, row.col2]
columns.append(column_object)
for column_object in columns:
statement = 'INSERT INTO tableB (col1, col2) VALUES (%s, %s)'
args = column_object[0], column_object[1]
cursor.execute(statement, args)
使用小樣本測試集,我跑了兩個腳本5倍,性能是可以忽略不計。一種方法比另一種更受歡迎嗎?
更復雜,不要手動插入文本查詢。這就是SQL注入發生的方式。 – Blender
你爲什麼不使用參數化查詢? –
@Blender這是一個內部維護腳本。 – Kermit