使用Python执行MySQL查询

时间:2015-03-23 16:38:47

标签: python mysql

我正在尝试运行一些MySQL查询并在我的Python程序中输出结果。我创建了这个被调用的函数,并且光标被传递通过。但是,我遇到了一个问题,即运行以下代码将始终返回None / nothing。

这就是我所拥有的:

def showInformation(cursor):
    number_rows = 'SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = "DB"'
    testing = cursor.execute(number_rows)

    print(testing)

使用cursor对象本身时,我不会遇到任何问题:

for row in cursor:
         print(row)

1 个答案:

答案 0 :(得分:1)

我想你需要:

print(cursor.fetchone())

因为你只返回一个计数,所以你期望一行。

除非根据mysql documentation指定execute,否则调用multi=True不应返回任何内容。程序员只能像你一样迭代cursor,或者调用fetchone来检索一行或调用fetchall来检索所有行,或者调用fetchmany来检索一些行。< / p>