前提・実現したいこと
Python、SQLiteを用いてデータベースについて勉強しています。
for文を用いてテーブル内の特定の行に列を追加し、その後追加した列(最後列)にデータを挿入する方法が分からず困っています。
目標としては、下のような表が保存できれば成功です。
|Number|TEXT|TEXT| ……
|0 |1 |2 | ……
お詳しい方、ご回答よろしくお願いします!
該当のソースコード
python
1import sqlite3 as sq 2 3 4conn = sq.connect(r"C:\~~~\sample_data.db") 5corsor = conn.cursor() 6 7 8# [FOR_LOOP] テーブル 9cursor.execute("DROP TABLE IF EXISTS FOR_LOOP") 10corsor.execute('''CREATE TABLE IF NOT EXISTS FOR_LOOP (Number integer PRIMARY KEY)''') 11 12# リストに数字を追加 13list = [] 14for i in range(5): 15 list.append(str(i)) 16 17 18# データベース操作 19try: 20 for k in range(len(list)): 21 # 列を追加 22 corsor.execute("ALTER TABLE FOR_LOOP ADD COLUMN TEXT text") 23 # list内のデータを挿入 ※↓ここの書き方が分からない※ 24 corsor.execute(f"INSERT INTO FOR_LOOP VALUES (1, ?)", (list[k], )) 25except sq.Error as e: 26 print("sqlite3.Error occurred:", e.args[0]) 27 28 29 30conn.commit() 31conn.close() 32 33
補足情報(FW/ツールのバージョンなど)
Windows10
sqlite 3.32.3
回答1件
あなたの回答
tips
プレビュー