如何在for或while循环中使用MySQLdb的SELECT

2 投票
3 回答
5119 浏览
提问于 2025-04-16 03:39

在编程中,有时候我们会遇到一些问题,比如代码运行不正常或者出现错误。这些问题可能是因为我们没有正确理解某些概念,或者在写代码的时候犯了一些小错误。

为了帮助大家更好地理解这些问题,我们可以通过一些例子来说明。比如说,如果你在写一个程序的时候,发现它没有按照预期的方式工作,首先要检查一下你的代码逻辑是否正确,或者有没有遗漏什么重要的步骤。

另外,调试也是一个很重要的技能。调试就是找出代码中的错误并修复它们。你可以通过打印一些信息到屏幕上,来看看程序在运行时的状态,这样可以帮助你找到问题所在。

总之,编程是一个不断学习和实践的过程,遇到问题是很正常的,关键是要保持耐心,逐步解决它们。

import _mysql as mysql
db=mysql.connect('localhost','username','password','database')


db.query("""select * from news""")

result = db.store_result()


print result.num_rows()#two records

#how to loop? without cursor

print result.fetch_row()

3 个回答

0

我不太清楚你打算怎么使用这个循环,不过你可以试试这样做:

while x < result.num_rows():
    #do something for each row
    X += 1
6

你不应该导入 _mysql。以单个下划线开头的符号是私有的,意思是它们是内部使用的。你应该导入 MySQLdb,并查看一下 PEP 249 来了解它的用法。

7

你可以试试这个:

while True:
    record = result.fetch_row()
    if not record: break
    print record

我也赞同 @Ignacio 提出的 警告,不要使用 _mysql。建议你改用 import MySQLdb

撰写回答