import mysql.connector
connection = mysql.connector.connect(user="REMOVED",
password="REMOVED",
host="REMOVED",
database="REMOVED")
cur = connection.cursor()
# Latitude - remove letter A
cur.execute("UPDATE tau._inm_exportados_test_csv SET latitud = REPLACE (latitud, 'a=','');")
print("Latitude change remove letter A - executed!")
# Longitude - remove letter A
cur.execute("UPDATE tau._inm_exportados_test_csv SET longitud = REPLACE (longitud, 'a=','');")
print("Longitude change remove letter A - executed!")
# Latitude - MODIFY COLUMN
cur.execute("ALTER TABLE tau._inm_exportados_test_csv MODIFY COLUMN latitud DECIMAL(10,6);")
print("Latitude - MODIFY COLUMN - executed!")
# Longitude - MODIFY COLUMN
cur.execute("ALTER TABLE tau._inm_exportados_test_csv MODIFY COLUMN longitud DECIMAL(10,6);")
print("Longitude - MODIFY COLUMN - executed!")
# Post Code data type change
cur.execute("ALTER TABLE tau._inm_exportados_test_csv MODIFY COLUMN codigo_postal varchar(255);)")
print("Post Code data type change to varchar(255) - executed!")
connection.commit()
cur.close()
connection.close()
我试图让这个简单的陈述清单没有成功。更让人困惑的是,前四个语句有效,而最后一个语句甚至在我注释掉其余语句时也不起作用!最后的语句得到以下响应:mysql.connector.errors.InterfaceError: Use multi=True when executing multiple statements
codigo_posal的数据类型是int(11),而latitud和longitud是varchar。在
我尝试过创建新的连接,新的光标,新的连接和光标。我尝试添加multi=“True”并将语句组合到一个操作中。我试着给每一个都添加multi=“True”当前执行()同时作为第二个和第三个参数。我已经在Workbench中运行了该语句,以确保该语句是有效的并且能够正常工作。在
但在这里没有成功。。。在