SQLite Python插入-提供的绑定数量不正确
道歉如果这是多余的,我花了很多时间试图找到答案,但提供的技巧似乎没有任何作用。我正在尝试使用Python将股票数据的csv文档(yahoo finance)读入SQLite: 我使用以下方法:SQLite Python插入-提供的绑定数量不正确,python,sqlite,Python,Sqlite,道歉如果这是多余的,我花了很多时间试图找到答案,但提供的技巧似乎没有任何作用。我正在尝试使用Python将股票数据的csv文档(yahoo finance)读入SQLite: 我使用以下方法: to_db = [(i['Ticker'], i['Open'], i['High'], i['Low'],i['Close'], i['Volume'], i['AdjClose']) for i in dr] c.executemany("insert into stock_test1 (Ticker
to_db = [(i['Ticker'], i['Open'], i['High'], i['Low'],i['Close'], i['Volume'], i['AdjClose']) for i in dr]
c.executemany("insert into stock_test1 (Ticker, Date, Open, High, Low, Close, Volume, AdjClose) values ( ?, ?, ?, ?, ?, ?, ?, ?);", to_db)
我得到:
sqlite3.ProgrammingError:提供的绑定数量不正确。当前语句使用8,提供了7个
我在这方面哪里出错了?您的
太多了?
s。或者元组中的项目太少。现在它被重新格式化,我认为问题变得很明显
to_db
有7项,而不是8项。因此,您试图用7个参数填充8个绑定。只是一个猜测,但也许应该是这样
Ticker Date Open High Low Close Volume AdjClose
AA 1/5/11 16.34 16.59 16.11 16.56 48278700 16.56
这将使到\u db
发生如下变化:
to_db = [(i['Ticker'], i['Date'], i['Open'], i['High'], i['Low'],i['Close'], i['Volume'], i['AdjClose']) for i in dr]
发送查询参数时使用列表而不是元组非常感谢!我太粗心了,很抱歉占用您的时间,再次感谢您的帮助!
to_db = [(i['Ticker'], i['Date'], i['Open'], i['High'], i['Low'],i['Close'], i['Volume'], i['AdjClose']) for i in dr]