2012-08-23 51 views
1

我正在試圖使用pymysql從數據庫中獲取一個值。我目前的解決方案是3行代碼。這是處理這個問題的最好方法嗎?在Python中使用pymysql訪問MySQL中的一個值

import pymysql 

conn = pymysql.connect(host='localhost', user='root', passwd='') 
conn.autocommit(True) 
cur = conn.cursor() 

memory = '100' 

# I want to access one item from mySQL 
cur.execute("""SELECT id FROM scada.sensors WHERE memory='{}'""".format(memory)) 
for x in cur.fetchall(): # only runs once 
    sensor_id=x[0] 

我需要這個for循環來訪問cur.fetchall()內容?

我使用Python 3.2.3

回答

5

如果你只對一個值(或第一值)感興趣的話,可以只使用fetchone方法代替fetchall。這裏有一個來自docs for MySQLdb的例子(pymysql說它複製了整個MySQLdb API)。