sqlite - 在特定位置插入一行?

标签 sqlite

所以我创建了一个配方数据库,而现在我注意到我忘了在第二个配方中添加成分。配料的顺序在这里显然很重要,因此,即使我现在将其添加到表格的末尾,当我第二个配方SELECT还是第二个配料时,它仍将是最后一个。

有什么方法可以将其插入特定位置,还是注定要创建一个指定成分顺序的index列?

注意:这是一个联结表,因此这里没有主键,因此我不能使用特定的主键值插入它。

编辑:基本上我有三个表:RecipeIngredient,和RecipeIngredient多对多联结表。

这是RecipeIngredient联结表的结构:

RecipeId: FK
IngredientId: FK
Quantity: REAL
UOM: TEXT
Notes: TEXT

最佳答案

First normal form (1NF)的规则对此严格:


行没有从上到下的顺序。


意味着在适当的数据库模式中,记录不可能“丢失在某个位置”。

你确实是“死了”,


将必须创建一个索引列,指定成分的顺序

关于sqlite - 在特定位置插入一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40422138/

相关文章:

sql-server - 在 SQL Server Express 和 SQLite 之间进行选择

node.js - 如何用 Electron 解决 Sqlite3 的这个错误?

python - sqlite3 使用 python 和 python cgi 插入

android - 在 SQLite 中保存图像的优点和缺点

android - 基于2个字段通过contentProvider批量插入/更新

android - 如何从 sqlite android 中的 max(id) 获取属性表?

python - Sqlite可以处理多少用户,Django

r - 如何使用glue_sql()并避免粘贴动态SELECT语句?

sql - SQL日期时间查询

sql - 在字符串末尾用数字排序