【问题标题】:SQLite table with some rows missing a columnSQLite 表的某些行缺少一列
【发布时间】:2014-04-23 01:51:20
【问题描述】:

我在 SQLite 数据库中有一个表,看起来像这样,但列和行更多:

| Field1  | Field2  |
|---------|---------|
| A       | 1       |
| B       | 2       |
| C       |         |

我需要做的是运行这样的 SQL 查询:

SELECT * FROM <tablename> WHERE <conditions> ORDER BY Field2

问题是,我收到错误消息:no such column: Field2

所以现在我被要求将所有缺失值设置为 99。但是当我运行时

UPDATE <tablename> SET Field2='99' WHERE Field2 IS NULL;

我得到同样的错误。如何解决此问题并更新所有丢失的单元格?

编辑:我还应该补充一点,缺失的值似乎不为空,因为如果我在我的数据库 GUI 浏览器中添加一个新列,所有单元格都显示为 [NULL],尽管此列没有。

【问题讨论】:

  • 专栏的真名是什么?可能是保留字
  • 尝试引用该列,看看是否有帮助
  • @Ryx5 它是sortOrder。尽管同一数据库中的其他表使用它并且工作正常。
  • 请显示表的实际创建语句和您正在使用的查询。
  • 是的,我大部分时间都做了一些研究,app的代码并没有像预期的那样写sql,请问您可以显示完整的代码吗? (建表+创建sql语句)

标签: sql sqlite


【解决方案1】:

这原来是由表格中一个非常微妙的问题引起的:

几个列名(导致我出现问题的列名)以换行符结尾(\n)。删除换行符解决了我所有的问题!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多