

■抽出後データ：変数名：name  
['nameA', 'nameB', 'nameC', 'nameD']

■sqlite3：テーブル名：user  
header:name

■sqlite3格納後  
name  
nameA  
nameB  
nameC  
nameD

上記のように格納したい。  
下記のようにやってみたが、変数nameがそのまま１行に入ってしまう。  
リストに入っているnameA〜Dを１行ずつデータベースに格納したい。

[code]

    # 変数
    name = '\n'.join(name)
    
    # DB処理
    
    dbpath = "user.db"
    con = sqlite3.connect(dbpath)
    cursor = con.cursor()
    
    sql = 'INSERT INTO user(name)VALUES(?)'
    cursor.execute(sql, (name,))
    con.commit()
    con.close
    
[/code]


CC BY-SA 4.0
2019-05-24T15:37:42.237
55227
2021-10-19T13:04:35.453
2019-05-24T16:52:23.090
3060
32771
question
python database sqlite
リストで抽出したデータをsqlite3(データベース)に格納したい


上記のうち、`name = '\n'.join(name)` の処理は行わないで、`cursor.execute(sql, (name,))`
の部分を以下のようにしてみてください。

[code]

    for entry in name:
        cursor.execute(sql, (entry,))
    
[/code]


CC BY-SA 4.0
2019-05-25T09:18:05.870
55240
2019-05-25T09:18:05.870
26370
55227
answer