使用cursor.fetchone()选择count()时返回None

时间:2015-05-21 03:46:39

标签: python mysql mysql-connector

我写了一个像这样的SQL:

"select count(md5) from table_file_log where md5=\'%s\'" % my_md5

my_md5是传递给方法的字符串。 当我使用fetchone()时,我返回了None

实际上我通常更喜欢fetchall()以避免None返回,但我相信count()应该(0,)而不是None,即使没有记录。 我添加了日志记录来打印sql并将其粘贴到mysql中并返回正确的计数。

还有一件事,在我的程序中,有数百种相同类型的sql被执行,其中一些得到了None,其中一些得到了正确的结果,如(0,)(1,)

我试图在这个网站上搜索解决方案,我发现的唯一与我的问题相关的帖子是: cursor.fetchone() returns None but row in the database exists 但我不明白为什么autocommit会在那个问题上起作用。即使这是我想知道答案的答案。

我使用Python 2.7和mysql-connector,以及MyISAM作为引擎。

0 个答案:

没有答案