首页 > 解决方案 > 我正在尝试从我的 sqlite 数据库中的特定列打​​印价格,它给了我一个元组索引超出范围错误

问题描述

我的数据库中有一个表,我试图从特定列中提取所有项目并将每个项目存储在变量中,但是我得到一个元组索引超出范围错误请帮助,我也尝试这种方法来获取行并存储它们变成变量,但我不知道为什么它不适用于列。

c.execute("SELECT Selling_Price FROM stock_records")
            result = c.fetchone()
            for i in result:
                r1 = i[0]
                r2 = i[1]
                r3 = i[2]
                r4 = i[3]
                r5 = i[4]

标签: pythonsqlitetuples

解决方案


使用SELECT Selling_Price FROM stock_records

将仅提取每一行的Selling_Price列,因此只有一个元素/索引i[0]可用(在范围内)i[1]将超出范围。

如果你使用过SELECT Selling_Price, another_column FROM stock_records(假设 another_column 是表中的一列)。然后每行将存在两个值,然后您可以访问两者i[0]i[1]但不能访问i[2],依此类推。

您可能想要使用SELECT * FROM stock_records,在这种情况下,每一行都将具有表中所有列的值,因此i[0]通过 toi[4]将起作用(假设表中有 5 列)。


推荐阅读