1

コードで何が間違っているのか教えていただけますか?

この特定のケースを検索しようとしましたが、答えが見つかりませんでした。の公式ドキュメントsqlite3の例も使用しようとしましたが、機能しませんでした。基本的に、inc_datasqlite3 に挿入する必要があるデータがたくさんあります。

import sqlite3

inc_data = [[u'Period Ending', u'Dec 31, 2012', u'Dec 31, 2011', u'Dec 31, 2010'],
            [u'Total Revenue\n', u'104,507,000\n', u'106,916,000\n', u'99,870,000\n'],
            ]


conn = sqlite3.connect("inc_data.db")
c = conn.cursor()
c.execute('''DROP TABLE inc_table''')

c.execute('''CREATE TABLE inc_table
             (item text, value1 text, value2 text, value3 text)''')

c.execute('INSERT INTO inc_table VALUES (?,?,?,?)', inc_data)

conn.commit()

conn.close()

エラー メッセージ:

c.execute('INSERT INTO inc_table VALUES (?,?,?,?)', inc_data)
sqlite3.OperationalError: no such table: inc_table

助けてくれて本当にありがとうございます。

4

1 に答える 1

3

2 つの項目を渡しました。それぞれパラメータのリスト。

c.executemany()(シーケンスのシーケンスが必要です) を使用するか、ループしinc_dataてバインド値のc.execute() 1 つのセットを指定します。

# insert multiple rows; one for each entry in `inc_data`
c.executemany('INSERT INTO inc_table VALUES (?,?,?,?)', inc_data)

# or loop
for bind_values in inc_data:
    c.execute('INSERT INTO inc_table VALUES (?,?,?,?)', bind_values)
于 2013-10-20T02:31:50.967 に答える