mirror of
https://github.com/simonw/sqlite-utils.git
synced 2026-09-17 22:14:09 +02:00
Rename the option to create-triggers for FTS.
This commit is contained in:
parent
3816556782
commit
d0658fda27
4 changed files with 7 additions and 7 deletions
|
|
@ -266,12 +266,12 @@ def create_index(path, table, column, name, unique, if_not_exists):
|
|||
@click.option("--fts4", help="Use FTS4", default=False, is_flag=True)
|
||||
@click.option("--fts5", help="Use FTS5", default=False, is_flag=True)
|
||||
@click.option(
|
||||
"--create-update-triggers",
|
||||
"--create-triggers",
|
||||
help="Create triggers to update the FTS tables when the parent table changes.",
|
||||
default=False,
|
||||
is_flag=True,
|
||||
)
|
||||
def enable_fts(path, table, column, fts4, fts5, create_update_triggers):
|
||||
def enable_fts(path, table, column, fts4, fts5, create_triggers):
|
||||
"Enable FTS for specific table and columns"
|
||||
fts_version = "FTS5"
|
||||
if fts4 and fts5:
|
||||
|
|
@ -282,7 +282,7 @@ def enable_fts(path, table, column, fts4, fts5, create_update_triggers):
|
|||
|
||||
db = sqlite_utils.Database(path)
|
||||
db[table].enable_fts(
|
||||
column, fts_version=fts_version, create_update_triggers=create_update_triggers
|
||||
column, fts_version=fts_version, create_triggers=create_triggers
|
||||
)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -710,7 +710,7 @@ class Table(Queryable):
|
|||
)
|
||||
self.db.add_foreign_keys([(self.name, column, other_table, other_column)])
|
||||
|
||||
def enable_fts(self, columns, fts_version="FTS5", create_update_triggers=False):
|
||||
def enable_fts(self, columns, fts_version="FTS5", create_triggers=False):
|
||||
"Enables FTS on the specified columns."
|
||||
sql = """
|
||||
CREATE VIRTUAL TABLE "{table}_fts" USING {fts_version} (
|
||||
|
|
@ -725,7 +725,7 @@ class Table(Queryable):
|
|||
self.db.conn.executescript(sql)
|
||||
self.populate_fts(columns)
|
||||
|
||||
if create_update_triggers:
|
||||
if create_triggers:
|
||||
old_cols = ", ".join("old.[{}]".format(c) for c in columns)
|
||||
new_cols = ", ".join("new.[{}]".format(c) for c in columns)
|
||||
triggers = """
|
||||
|
|
|
|||
|
|
@ -335,7 +335,7 @@ def test_enable_fts_with_triggers(db_path):
|
|||
CliRunner()
|
||||
.invoke(
|
||||
cli.cli,
|
||||
["enable-fts", db_path, "Gosh", "c1", "--fts4", "--create-update-triggers"],
|
||||
["enable-fts", db_path, "Gosh", "c1", "--fts4", "--create-triggers"],
|
||||
)
|
||||
.exit_code
|
||||
)
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ def test_enable_fts_w_triggers(fresh_db):
|
|||
table = fresh_db["searchable"]
|
||||
table.insert(search_records[0])
|
||||
table.enable_fts(
|
||||
["text", "country"], fts_version="FTS4", create_update_triggers=True
|
||||
["text", "country"], fts_version="FTS4", create_triggers=True
|
||||
)
|
||||
assert [("tanuki are tricksters", "Japan", "foo")] == table.search("tanuki")
|
||||
table.insert(search_records[1])
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue