Python SQL 查询从关系数据库中检索数据

Python SQL query to retrieve data from relational DB

我有以下数据库表:

SENSORS: sensor_id, type_id, location_id, pin_id
SENSOR_TYPES:type_id, type_name, parameter
LOCATIONS: location_id, room
PI_PINS: pin_id, broadcom, wiring_pi, description

已通过 x_id 个字段在 SENSORS 和其他三个表之间建立关系。

我如何构造 python 代码到 运行 一个 SQL 查询,该查询将 return 一个包含 {sensor_id:type_name 的字典}?我认为以下查询应该有效,但我不确定如何将其包装在 python 到 return 字典中。

SELECT sensors.sensor_id, sensor_types.type_name
FROM sensors
INNER JOIN sensor_types
ON sensors.type_id=sensor_types.type_id

好的,原来有一个字典游标。对于后代,这是我的工作代码:

#!/usr/bin/env python

import MySQLdb

# Open databse connection
db = MySQLdb.connect(host="****",user="****",passwd="****",db="****")

#Prepare a cursor object using cursor() method
cur = db.cursor(MySQLdb.cursors.DictCursor)

#Execute SQL query using execute() method
cur.execute("SELECT sensor_id, sensor_types.type_name FROM sensors INNER JOIN sensor_types ON sensors.type_id=sensor_types.type_id")

#Fetch the results
data = cur.fetchall()

#Print out results
for row in data:
    print row["sensor_id"],row["type_name"]

#Disconnect from server
db.close()