我正在使用python调用存储过程来创建临时表
然后我尝试从该表中进行选择,但我收到了错误
Caught an exception while rendering: (1137, "Can't reopen table: 'temporary_name'")
任何人都可以看到我出错的地方
我的代码是
# create a cursor
cur = connection.cursor()
# execute the stored procedure
cur.callproc('nodetree')
# Get results from stored procedure
sql = "SELECT * FROM temporary_name"
cur.execute(sql)
该表未被称为temporary_name我只是将其放入例如
答案 0 :(得分:0)
来自MySQL documentation(参见粗体文字):
您不能在同一查询中多次引用TEMPORARY表。例如,以下内容不起作用:
mysql> SELECT * FROM temp_table, temp_table AS t2; ERROR 1137: Can't reopen table: 'temp_table'
如果在不同别名下的存储函数中多次引用临时表,也会发生此错误,即使引用发生在函数内的不同语句中也是如此。
答案 1 :(得分:0)
您可以使用常规表并将其删除。