如何将数据更新到sqlite数据库中的特定列?

rsk*_*w00 4 python sqlite

我有一个表,其中包含一名球员的姓名、得分 1、得分 2 和得分 3。有多个数据条目,我想知道如何将玩家的分数添加到正确的列中,即:

Name, Score 1, Score 2, Score 3
John,      12,    ____,    ____
Run Code Online (Sandbox Code Playgroud)

使用时如何指定将玩家得分 2 插入哪一列

.execute('''INSERT INTO ScoresTable (name, score 1, score 2, score 3)''')
Run Code Online (Sandbox Code Playgroud)

我是否使用列索引,但如何将其实现到代码中?

Mar*_*ers 6

要更改现有行,您需要使用带有过滤器的UPDATE语句WHERE

UPDATE ScoresTable SET ("score 1"=12, "score 2"=20, "score 3"=42) WHERE name='John'
Run Code Online (Sandbox Code Playgroud)

".."在列名周围使用了双引号,因为它们中有空格。

在 Python 中使用游标和 SQL 参数,将转换为:

cursor.execute('''\
    UPDATE ScoresTable SET ("score 1"=?, "score 2"=?, "score 3"=?)
    WHERE name=?
    ''', (score1, score2, score3, name))
Run Code Online (Sandbox Code Playgroud)