Python MySQLdb SELECT没有返回正确的值

时间:2014-02-25 15:57:16

标签: python mysql-python

以下是我正在处理的代码:

poljeID = int(cursor.execute("SELECT poljeID FROM stanje"))
xkoord = cursor.execute("SELECT xkoord FROM polje WHERE poljeID = %s;", poljeID)
ykoord = cursor.execute("SELECT ykoord FROM polje WHERE poljeID = %s;", poljeID)

print xkoord, ykoord

它是它的一个片段,基本上它需要做的是获取代理当前所在的字段ID(poljeID)(stanje)并使用它来获取该字段的x和y坐标(xkoord, ykoord)。

变量的初始值为:

poljeID = 1
xkoord = 0
ykoord = 0

我使用该代码获得的值是:

poljeID = 1
xkoord = 1
ykoord = 1

我做错了什么?

1 个答案:

答案 0 :(得分:1)

cursor.execute不返回查询结果,它返回受影响的行数。要获得结果,您需要为每个查询执行cursor.fetchone()(或cursor.fetchall())。

(注意,第二次和第三次查询确实应该立即完成:SELECT xkoord, ycoord FROM ...