2016-09-15 14 views
1

最近私はPythonを学び、MYSQLdbを使ってデータベースに接続し、データベースからデータを取り出す方法を学びました。ただし、すべての例では、複数行のデータを取得する方法を示しています。私は1行のデータだけを取り出す方法を知りたい。MYSQLdb - Pythonで単一項目を選択

これは私の現在の方法です。

cur.execute("SELECT number, name FROM myTable WHERE id='" + id + "'") 
results = cur.fetchall() 
number = 0 
name = "" 
for result in results: 
    number = result['number'] 
    name = result['name'] 

私は唯一つの結果があるように起こっている知っているので、for result in results:を行うには冗長なようです。

forループを使用せずに1行のデータを取得するにはどうすればよいですか?

答えて

2

.fetchone()救助へ:

result = cur.fetchone() 
1

`cur.execute()`任意の結果を返さなかった場合どのような使用.pop()

if results: 
    result = results.pop() 
    number = result['number'] 
    name = result['name'] 
+0

? 'results.pop()'はどのようにふるまいますか? –

+0

@GaryJohnsonを空にした場合とそうでない場合の結果を確認するためにifを内部に入れます。 – levi

関連する問題