【发布时间】:2019-06-29 12:06:48
【问题描述】:
解释方法/命令似乎不适用于 python mysql 连接。其他查询显示正确的结果,但使用说明命令没有显示任何内容。代码打印和 cmets 是 int 葡萄牙语。我正在使用 DataFrames 显示查询结果的内容以显示问题/错误/其他。代码是缩进的,因为它刚刚从 Visual Studio 中出来。我用谷歌搜索了很多,没有找到任何线索。
print("#########################################################################################")
# ANTES DE EXECUTAR CADA UMA DAS QUERYS VEREFICAR QUAIS AS TABELAS QUE SAO UTLIZADAS EM CADA UMA
# VERIFICAR QUE TABELAS EXISTEM PARA O PROFESSOR
query = "EXPLAIN " + sqlqueryprof
print("QUERY EXPLAIN DO PROFESSOR")
print(query)
#connection.commit()
cursor = connection.cursor()
cursor.execute(query)
explain_prof = cur.fetchall()
print("TABELA EXPLICATIVA DA QUERY DO PROFESSOR")
data_frame_expl_prof = pandas.DataFrame(list(explain_prof))
print(data_frame_expl_prof)
# VERIFICAR QUE TABELAS EXISTEM PARA O ALUNO
query = "EXPLAIN " + sqlqueryalun
print("QUERY EXPLAIN DO ALUNO")
print(query)
#connection.commit()
cursor = connection.cursor()
cursor.execute(query)
explain_alun = cur.fetchall()
print("TABELA EXPLICATIVA DA QUERY DO ALUNO")
data_frame_expl_alun = pandas.DataFrame(list(explain_alun))
print(data_frame_expl_alun)
print("#################################################################")
# EXECUTAR CADA UMA DAS QUERYS
cursor_prof = connection.cursor()
cursor_prof.execute(sqlqueryprof)
records_prof = cursor_prof.fetchall()
data_frame_prof = pandas.DataFrame(list(records_prof))
print("IMPRIMIR O DATA FRAME RESULTANTE DO PROFESSOR A CONEXAO")
print(data_frame_prof)
cursor_alun = connection.cursor()
cursor_alun.execute(sqlqueryalun)
records_query = cursor_alun.fetchall()
data_frame_alun = pandas.DataFrame(list(records_query))
print("IMPRIMIR O DATA FRAME RESULTANTE DO ALUNO A CONEXAO")
print(data_frame_alun)
【问题讨论】:
-
为什么用
DataFrame来显示EXPLAIN的结果? -
它可能是任何其他结构。只要它当时适用于其他查询,我就会尝试使用 EXPLAIN sql 命令使其在终端中显示... @Lucas
-
我已经在我这边进行了测试,它按预期工作(即使使用
pandas.DataFrame)。您是否尝试过打印您的fetchall的输出?它们是空的吗?如果是这样,您的查询很可能没有返回任何内容。 -
是的,这就是@Lucas。 Fetchall 返回空。如您所见,我只是将“EXPLAIN”添加到查询字符串中。他们自己的查询正在返回一些东西。当我把解释 -> 空结果...
标签: mysql python-3.x flask