第13行出现以下错误:
sqlite3.InterfaceError:错误绑定参数0-可能是不受支持的类型。
比较第2行的代码和第13行的代码,第2行工作正常,并且似乎与第13行相同。我在做什么错? 日期和标签都是字符串。 日期例如是“ 2018-11”,而标记则类似于“票价”,在我的示例中,它始终是!=“无”。
if tag != "None":
self.c.execute("SELECT DISTINCT Date FROM financial_table WHERE strftime('%Y-%m', Date) = ? AND Tag = ? ORDER BY Date ", (date, tag)) #row 2
else:
self.c.execute("SELECT DISTINCT Date FROM financial_table WHERE strftime('%Y-%m', Date) = ? ORDER BY Date ", (date,))
single_dates = self.c.fetchall()
for i in single_dates:
print (i)
#take data in order to sum up all costs from one day
for i in single_dates:
print ("***",i)
if tag != "None":
self.c.execute("SELECT Price FROM financial_table WHERE Date = ? AND Tag = ?", (i, tag)) #line 13
else:
self.c.execute("SELECT Price FROM financial_table WHERE Date = ?", (i))
cache = self.c.fetchall()
print (cache)
self.plot_overall_price.append(sum(j for j, in cache)) #save overall price for
self.plot_date.append(i[0]) #a certain date
self.plot_date_days.append(i[0][8:10])
非常感谢您的帮助!
答案 0 :(得分:0)
@SuperShoot 谢谢你的帮助。你是对的,我返回了(('2018-11-10',)''。我通过将第13行从...(i,...更改为...(i [0],...
但是,有时候对我来说还是个谜。当tag ==“ None”时,例如第15行是可能的,而我不需要i [0],我可以只使用i。我的意思是这一行:
self.c.execute("SELECT Price FROM financial_table WHERE Date = ?", (i))