MySQL - 如何在启用GTID一致性的同时使用Python创建临时表?

时间:2018-02-20 08:00:43

标签: mysql python-2.7

我使用的是Python 2.7和MySql 5.7。我尝试使用代码创建临时表:

self.A

但我收到了错误:

def create_temp_table(): cnx = connect_mysql('username', 'password', 'host', 'db') cursor = cnx.cursor() try: create_table_query = "CREATE TEMPORARY TABLE IF NOT EXISTS temptable (id INT UNSIGNED NOT NULL, val1 VARCHAR(64), val2 VARCHAR(128), val3 VARCHAR(128), PRIMARY KEY (id))" cursor.execute(create_table_query) cnx.commit() cursor.close() cnx.close() except: cnx.close() raise

根据MySQL手册:

"临时表。使用GTID时,事务内部不支持CREATE TEMPORARY TABLE和DROP TEMPORARY TABLE语句(即,使用--enforce-gtid-consistency选项启动服务器时)。可以在启用GTID的情况下使用这些语句,但仅限于任何事务之外,并且只能使用autocommit = 1."

如何在Python中使用autocommit = 1在事务外部创建此临时表?

0 个答案:

没有答案