Commit graph

276 commits

Author SHA1 Message Date
Simon Willison
7b3fdf0fcd mypy annotations for rows_from_file(), run mypy in CI
Refs #289, #279
2021-06-22 11:04:32 -07:00
Simon Willison
3805d1c973 Removed duplicate vacuum() function, thanks mypy 2021-06-22 10:44:12 -07:00
Simon Willison
9faeef230b New db.query() method, refs #290 2021-06-21 21:03:59 -07:00
Simon Willison
933be66eba sqlite-utils memory --schema, closes #288
Also updated some rowid examples, closes #287
2021-06-20 11:25:21 -07:00
Simon Willison
0e797033f9 .transform() on rowid (non-pk) tables bug fix, closes #284 2021-06-19 08:28:26 -07:00
Simon Willison
5b257949d9 table.use_rowid introspection property, closes #285 2021-06-19 08:12:29 -07:00
Simon Willison
dc94f4bb8c Don't detect types on JSON input to memory, closes #283 2021-06-19 07:52:44 -07:00
Simon Willison
ec5174ed40 Detect types for sqlite-utils memory CSV, opt out with --no-detect-types - closes #282 2021-06-18 21:37:56 -07:00
Simon Willison
fd9867d145 sqlite-utils insert --detect-types option, refs #282 2021-06-18 21:18:58 -07:00
Simon Willison
59992d2fee Better help text for 'sqlite-utils memory', refs #272 2021-06-18 20:20:56 -07:00
Simon Willison
00e4bd5ff1 TSV and JSON support for sqlite-utils memory
Closes #281, closes #279, refs #272
2021-06-18 20:11:54 -07:00
Simon Willison
93594ce15b
Open CSV in binary mode, refs #280 2021-06-18 08:36:09 -07:00
Simon Willison
7684bbf097 --encoding option for sqlite-utils memory, closes #280
Refs #272
2021-06-18 08:29:41 -07:00
Simon Willison
42ec59d8ee
sqlite-utils memory command for directly querying CSV/JSON data
* Turn SQL errors into click errors
* Initial CSV-only prototype of sqlite-utils memory, refs #272
* Implement --save plus tests for --save and --dump, refs #272
* Re-arranged CLI query documentation, refs #272
* Re-organized CLI query docs, refs #272
* Docs for --save and --dump plus made SQL optional for those, refs #273
* Replaced one last :memory: example
* Documented --attach option for memory command, refs #272
* Improved arrangement of CLI query documentation
2021-06-18 08:00:52 -07:00
Simon Willison
eea3851d40 Added test, formatted with Black - refs #276, #277 2021-06-18 07:57:32 -07:00
Loren McIntyre
aa652b6afe
add -h support
Closes #276
2021-06-18 07:56:59 -07:00
Simon Willison
ca2b26130f sqlite-utils dump command, closes #274 2021-06-16 16:51:48 -07:00
Simon Willison
287cdcae89 Turn SQL errors into click errors 2021-06-15 21:40:28 -07:00
Simon Willison
b9629099ab Fix bug with upsert_all() and single column tables, closes #271 2021-06-12 19:57:21 -07:00
Simon Willison
0d2e4f49f3 db.schema and 'sqlite-utils schema' command, closes #268 2021-06-11 13:51:49 -07:00
Simon Willison
28dc5aac34 sqlite-utils indexes command, refs #263 2021-06-02 21:26:49 -07:00
Simon Willison
9c67cb9252 table.xindexes property plus improved introspection documentation, closes #261 2021-06-02 20:51:27 -07:00
Simon Willison
8de5595c21 Handle BOM in CSV files, closes #250 2021-05-28 22:34:17 -07:00
Simon Willison
668e8c9fd1 Better help for sqlite-utils create-table 2021-05-28 22:01:54 -07:00
Simon Willison
51d01da30d
Ability to add descending order indexes (#262)
* DescIndex(column) for descending index columns, refs #260
* Ability to add desc indexes using CLI, closes #260
2021-05-28 22:01:38 -07:00
Simon Willison
b2302875c9 Document --type option better, closes #255 2021-05-28 20:55:46 -07:00
Simon Willison
2f3371ecb1 Suggest --alter if column is missing, closes #259, refs #256 2021-05-18 20:26:22 -07:00
Rob Wells
e7b2626291
Fix incorrect create-table cli description (#254)
The description for `create-table` was duplicated from `create-index`.
2021-05-18 19:57:26 -07:00
Dylan Wu
6f4f9a3eff
Fixing insert from JSON containing strings with non-ascii characters are escaped aps unicode for lists, tuples, dicts (#258) 2021-05-18 19:47:44 -07:00
Simon Willison
22f1d9e199 Expand FTS acronym in --help output 2021-03-07 08:41:49 -08:00
Simon Willison
bba6e241be --ignore for sqlite-utils drop-table and drop-view, closes #237 2021-02-25 09:11:37 -08:00
Simon Willison
c236894caa table.drop(ignore=True) option, refs #237 2021-02-25 09:05:08 -08:00
Simon Willison
a76e3b33ac Fixed bug with add_foreign_key against columns with spaces, closes #238 2021-02-25 08:53:53 -08:00
Simon Willison
38e688fb8b table.pks_and_rows_where() method, closes #240 2021-02-25 08:28:17 -08:00
Simon Willison
2ba5588881 sqlite-utils --attach option, closes #236 2021-02-18 21:08:39 -08:00
Simon Willison
999f099cbe db.attach(alias, filepath) method, closes #113
Will also be useful for #236
2021-02-18 20:56:32 -08:00
Simon Willison
1f49f32814 Don't need line_buffering=True here, refs #230 2021-02-15 11:18:28 -08:00
Simon Willison
ef13bb046f Useful error message for enable_fts() on views, closes #220 2021-02-14 14:34:22 -08:00
Simon Willison
50d2096f5e --no-headers option for sqlite-utils insert --csv, closes #228 2021-02-14 14:25:03 -08:00
Simon Willison
1a93b72ba7 Increase csv field_size_limit to maximum, closes #229
Refs #227
2021-02-14 13:33:21 -08:00
Simon Willison
8f042ae1fd Fix for bug with extra columns in later chunks, closes #234
Thanks @nieuwenhoven for the fix, proposed in #225
2021-02-14 13:03:31 -08:00
Simon Willison
320f3ac33a offset= and limit= parameters, closes #231 2021-02-14 12:02:41 -08:00
Simon Willison
99ff0a288c sqlite-utils insert --sniff option, closes #230 2021-02-14 11:23:12 -08:00
Simon Willison
1e9eb875a6 Switch from codecs.getreader to io.TextIOWrapper, refs #230 2021-02-14 10:33:26 -08:00
Simon Willison
7d04565010 Remove rogue import, refs #226 2021-02-05 18:09:48 -08:00
Simon Willison
1b666f9315 --delimiter and --quotechar, closes #223 2021-02-05 17:34:47 -08:00
Simon Willison
d4e00f8d01 table.m2m(..., alter=True) option, closes #222 2021-01-17 20:26:02 -08:00
Simon Willison
b6840646ba .add_missing_columns() is now case insensitive, closes #221 2021-01-12 15:17:27 -08:00
Simon Willison
0d2a47eab9 .reset_counts() method and reset-counts command, closes #219 2021-01-03 12:59:31 -08:00
Simon Willison
b4f09146d3 table.has_counts_triggers property, refs #219 2021-01-03 12:41:24 -08:00