In meinem iOS und Android-Projekten, habe ich eine SQLite-Tabelle, die etwa wie folgt aussieht:aktualisieren Textspalte basierend auf dem Inhalt mit einem einzigen Nachschlag in SQLite
id words
-----------
1 apple, banana, orange, peach, strawberry
2 car, plane, orange
3 sheep, car, plane, horse, cow
. ...
.
.
Die words
Spalte ist eine TEXT
Spalte, die eine hält Komma abgegrenzte Liste von Wörtern.
Ich möchte die Wortliste einer bestimmten Zeile aktualisieren, indem Sie ein Wort an den Anfang der Liste hinzufügen. Die Liste sollte nicht mehr als 5 Einträge enthalten, daher würde ich auch das letzte Wort löschen.
Zum Beispiel, wenn ich row id 1
mit cherry
Aktualisierung wurde dann würde ich
cherry, apple, banana, orange, peach
bekomme Oder wenn ich das gleiche Update auf row id 2
tut, dann würde ich
cherry, car, plane, orange
Meine Frage bekommen
Ich weiß, dass ich aq tun könnte Um die Zeile zu erhalten, bearbeiten Sie den Text und aktualisieren Sie dann die Zeile. Dies würde jedoch zwei Tabellennachschlagevorgänge erfordern, einen für die Abfrage und einen für die Aktualisierung. Ist dies mit einem einzelnen Update-Lookup möglich?
Ich weiß, dass es die replace() function gibt, aber ich ersetze hier nichts. Ich bin auch nicht einfach incrementing an integer. Ich habe nichts Offensichtliches in der SQLite core functions gesehen.
Wow, ich bin beeindruckt . Ich muss mehr darüber lernen, wie ich mein Schema normalisieren kann. – Suragch