Say, we need to directly update note records in SQLite: what is the correct way to ensure data integrity with the Joplin desktop application and not cause any harm?
In my particular case, I need to update a part of the body
column in notes
conditionally (either via DB SQLite browser or a custom script).
But there seem to be several more or less relevant tables for notes: notes
, notes_normalized
and notes_fts*
, where *
stands for the suffix of a couple of tables being part of SQL full text search.
If I understand correctly, SQLite updates the full text search index (FTS) tables automatically, if sources are updated, so I would exclude them. According to schema, the source is notes_normalized
.
So is notes_normalized
the correct table to make changes? If yes, what is the purpose of notes
?