Skip to content

--load-extension for other sqlite-utils commands #137

Description

@simonw

e.g. for this:

calands-datasette % sqlite-utils tables calands.db --counts
[{"table": "spatial_ref_sys", "count": 4924},
 {"table": "spatialite_history", "count": 14},
 {"table": "sqlite_sequence", "count": 1},
 {"table": "geometry_columns", "count": 2},
 {"table": "spatial_ref_sys_aux", "count": 4873},
 {"table": "views_geometry_columns", "count": 0},
 {"table": "virts_geometry_columns", "count": 0},
 {"table": "geometry_columns_statistics", "count": 2},
 {"table": "views_geometry_columns_statistics", "count": 0},
 {"table": "virts_geometry_columns_statistics", "count": 0},
 {"table": "geometry_columns_field_infos", "count": 0},
 {"table": "views_geometry_columns_field_infos", "count": 0},
 {"table": "virts_geometry_columns_field_infos", "count": 0},
 {"table": "geometry_columns_time", "count": 2},
 {"table": "geometry_columns_auth", "count": 2},
 {"table": "views_geometry_columns_auth", "count": 0},
 {"table": "virts_geometry_columns_auth", "count": 0},
Traceback (most recent call last):
  File "/usr/local/bin/sqlite-utils", line 8, in <module>
    sys.exit(cli())
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/sqlite_utils/cli.py", line 143, in tables
    for line in output_rows(_iter(), headers, nl, arrays, json_cols):
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/sqlite_utils/cli.py", line 922, in output_rows
    for row, next_row in itertools.zip_longest(current_iter, next_iter):
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/sqlite_utils/cli.py", line 123, in _iter
    row.append(db[name].count)
  File "/usr/local/Cellar/sqlite-utils/2.15.1/libexec/lib/python3.8/site-packages/sqlite_utils/db.py", line 458, in count
    return self.db.conn.execute(
sqlite3.OperationalError: no such module: VirtualSpatialIndex

The tables command could take --load-extension too - as could rows and other similar commands.

Follow-on from #134

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions