我正在尝试编写一个程序,它会自动将数据插入sqlite中的给定表中。这是我的表格的样子:
例如,我想在col3中输入一个新值data5
,这是我使用的命令:
INSERT INTO exam_table (col3) VALUES ('data5')
以下是表格后面的内容:
问题是,如果我想在另一列中插入一个新值,比如说col1
,我应该使用什么命令,以便将新值插入col1
中的第一行。 null(第2行)?
注意:请提供除UPDATE exam_table SET col1='data6' WHERE col3='data4'
之外的任何SQL命令,因为假设我们不知道该表是怎样的,所以我们不知道那个'col3 '第2行包含'data4'
答案 0 :(得分:2)
关系数据库可能不适合您的应用程序,或者您可能需要明确对行进行排序。
你问:
我应该使用什么命令,以便将新值插入'col1'中第一行为空
...但SQL没有在查询强加的订单之外的行排序的真实概念。除非您将方案定义为ORDER BY。否则没有带有NULL col1的“第一行”。
然后你要求我们不要提供UPDATE命令,“因为假设我们不知道桌子是怎么样的,所以我们不知道'col3'第2行包含' DATA4' “
但这就是SQL的工作方式:它将事物视为无序的元组集(允许重复)。您不“将值插入NULL字段”,您可以插入整行或更新单个字段。
您必须强制执行排序,然后从那里开始工作 - 是的,它将是UPDATE命令或类似命令 - 或者删除SQL后端并使用具有不同数据本体概念的东西。