簡體   English   中英

如何將mySQL查詢存儲為python字典並稍后在腳本中調用?

[英]How to store mySQL query as python dictionary and call later in script?

我有一個名為“ uid ”的表,它有兩個字段, rfidempid

  • 示例記錄1 rfid = 88 999 33 555 empid = 1
  • 示例記錄2 rfid = 64 344 77 222 empid = 2

我想運行一個查詢,它將所有這些值存儲在python字典中,並允許我將rfid編號設置為稍后在腳本中調用的變量(MyRFID):

db = MySQLdb.connect("MyIp", "MyUser", "MyPass", "MyDB", cursorclass=MySQLdb.cursors.DictCursor)
curs=db.cursor()
curs.execute("""SELECT number, empid FROM rfid """)

因此,稍后在代碼中我可以檢查是否從現有變量中獲得匹配:

if MyVariable == MyRFID:
    #Create new record for that empid

我想你正在尋找胎兒方法。 打電話后

cur.execute("""SELECT number, empid FROM rfid """)

你會這樣做:

rows = cur.fetchall()

然后行將包含元組列表。 如果您特別需要它作為字典,您可以在此示例中執行dict(rows) ,但這只能起作用,因為您的查詢恰好返回兩列。 如果它超過兩列,您需要以下內容:

rows_dict = dict([ k[0], k[1:]) for k in rows])

(請參閱: 將3元素元組的列表轉換為字典

如果你想象的字典有列名作為鍵,你需要查看DictCursor( Python:使用mysqldb將MySQL表作為字典導入? )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM