1
我知道有幾十個關於同一個錯誤的問題,我已經檢查了所有問題。他們中的大部分都與某人濫用SELECT
聲明有關,並且我找不到與我的問題類似的任何問題。爲什麼INSERT INTO失敗,'操作數應該包含1列'?
conn = pymysql.connect(host='localhost',
port=3306,
user='root',
passwd='password',
db='nhl')
cur = conn.cursor()
#some code...
player = td.string.strip()
player = player.split(' (')
tID = teamList.index(team)
cur.execute("INSERT INTO players (Name,G,A,P,PlusMinus,PIM,S,H,BKS,GVA,TKA,TeamID)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
(player, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, tID))
pymysql.err.InternalError: (1241, 'Operand should contain 1 column(s)')
我真的不知道我要去哪裏錯了。所有數據庫列爲INT
,但Name
爲VARCHAR
。這是使用pymysql在Python 3.4中編碼的。
我假設在你的代碼中沒有換行符,並且你只是在這裏添加它以提高可讀性? – Kos
是的,整個執行語句在一行 – Tiberiu
ahhh這是你永遠不會注意到的簡單錯誤!乾杯 – Tiberiu