第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Python 中使用變量更新 sqlite 條目

如何在 Python 中使用變量更新 sqlite 條目

交互式愛情 2023-10-18 15:53:40
我目前有一個使用測試條目創(chuàng)建的 sqlite 表,并且需要能夠使用用戶的詢問字符串來更新數(shù)據(jù)庫中條目的機架和機架定位位置(如下所示)# Move asset to another location in depotdef move_data_to_rack():    serial_to_move = askstring('Move Asset', 'Please enter the Serial Number you want to move')    serial_to_move = serial_to_move.upper()    to_rack = askstring('Move Asset', 'Please enter the Rack you want to move to')    to_rack = to_rack.upper()    to_rack_loc = askstring('Move Asset', 'Please enter the Rack LOC you want to move to')    to_rack_loc = to_rack_loc.upper()    cursor.execute('''UPDATE depot_racks SET rack, rackloc = ?, ? WHERE serial = ?''', (to_rack, to_rack_loc, serial_to_move,))    db.commit()    messagebox.showinfo('Serial Moved', serial_to_move + ' has now been moved to ' + to_rack + to_rack_loc)該表的創(chuàng)建如下...# Depot Table creationcursor.execute('''            CREATE TABLE IF NOT EXISTS depot_racks(                id INTEGER PRIMARY KEY,                rack TEXT,                rackloc TEXT,                floorzone TEXT,                product TEXT,                serial TEXT,                status TEXT,                entdate TEXT,                servdate TEXT,                parts TEXT,                pat TEXT)''')當上面的函數(shù)運行時,我收到以下錯誤...Exception in Tkinter callbackTraceback (most recent call last):  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/tkinter/__init__.py", line 1883, in __call__    return self.func(*args)  File "/Users/grantpeach/Library/Mobile Documents/com~apple~CloudDocs/Programming/Python Programming/Personal Projects/Arjo RackSys/RackSysMain.py", line 104, in move_data_to_rack    cursor.execute('''UPDATE depot_racks SET rack, rackloc = ?, ? WHERE serial = ?''', (to_rack, to_rack_loc, serial_to_move,))sqlite3.OperationalError: near ",": syntax error因此,該功能背后的想法是,用戶將添加他們想要更新的序列號,然后輸入新的機架位置(例如 RACK1)和新的機架位置(例如 A)。然后,這應(yīng)該找到序列號,并且僅使用該序列更新該行的機架和機架鎖定部分。非常感謝任何幫助
查看完整描述

1 回答

?
慕桂英4014372

TA貢獻1871條經(jīng)驗 獲得超13個贊

每個?占位符必須分配給相應(yīng)的列名稱:

cursor.execute('''UPDATE?depot_racks?SET?rack?=??,?rackloc?=???WHERE?serial?=??''',?(to_rack,?to_rack_loc,?serial_to_move,))

如果您的 SQLite 版本是 3.15.0+,您還可以使用行值語法:

cursor.execute('''UPDATE?depot_racks?SET?(rack,?rackloc)?=?(?,??)?WHERE?serial?=??''',?(to_rack,?to_rack_loc,?serial_to_move,))



查看完整回答
反對 回復(fù) 2023-10-18
  • 1 回答
  • 0 關(guān)注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號