github
html_url | issue_url | id | node_id | user | created_at | updated_at | author_association | body | reactions | issue | performed_via_github_app |
---|---|---|---|---|---|---|---|---|---|---|---|
https://github.com/simonw/sqlite-utils/issues/24#issuecomment-501572149 | https://api.github.com/repos/simonw/sqlite-utils/issues/24 | 501572149 | MDEyOklzc3VlQ29tbWVudDUwMTU3MjE0OQ== | 9599 | 2019-06-13T06:47:17Z | 2019-06-13T06:47:17Z | OWNER | @IgnoredAmbience this is now shipped in sqlite-utils 1.2 - documentation here: * https://sqlite-utils.readthedocs.io/en/latest/python-api.html#python-api-defaults-not-null * https://sqlite-utils.readthedocs.io/en/latest/cli.html#cli-defaults-not-null | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
449818897 | |
https://github.com/simonw/sqlite-utils/issues/24#issuecomment-501516028 | https://api.github.com/repos/simonw/sqlite-utils/issues/24 | 501516028 | MDEyOklzc3VlQ29tbWVudDUwMTUxNjAyOA== | 9599 | 2019-06-13T01:42:36Z | 2019-06-13T01:42:36Z | OWNER | Maybe it's time to create a `sqlite-utils create-table` command here too, rather than forcing people to create tables only by inserting example data. | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
449818897 | |
https://github.com/simonw/sqlite-utils/issues/24#issuecomment-501515609 | https://api.github.com/repos/simonw/sqlite-utils/issues/24 | 501515609 | MDEyOklzc3VlQ29tbWVudDUwMTUxNTYwOQ== | 9599 | 2019-06-13T01:40:12Z | 2019-06-13T01:40:47Z | OWNER | But what to do for creating a table? For the Python function I could do this: ```python db["cats"].create({ "id": int, "name": str, "score": int, "weight": float, }, pk="id", not_null={"weight"}, defaults={"score": 1}) ``` The CLI tool only every creates tables as a side-effect of a `sqlite-utils insert` or `sqlite-utils upsert`. I can have them accept optional arguments, `--not-null colname` and `--default colname value`: ``` echo '{"name": "Cleo", "age": 4, "score": 2}' | \ sqlite-utils insert dogs.db dogs - \ --not-null age \ --not-null name \ --default score 1 ``` | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
449818897 | |
https://github.com/simonw/sqlite-utils/issues/24#issuecomment-501514575 | https://api.github.com/repos/simonw/sqlite-utils/issues/24 | 501514575 | MDEyOklzc3VlQ29tbWVudDUwMTUxNDU3NQ== | 9599 | 2019-06-13T01:34:55Z | 2019-06-13T01:34:55Z | OWNER | Since you can't have one without the other, I'm going with `--not-null-default=` and `not_null_default=` for the add column versions of this. | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
449818897 | |
https://github.com/simonw/sqlite-utils/issues/24#issuecomment-501509642 | https://api.github.com/repos/simonw/sqlite-utils/issues/24 | 501509642 | MDEyOklzc3VlQ29tbWVudDUwMTUwOTY0Mg== | 9599 | 2019-06-13T01:06:09Z | 2019-06-13T01:06:09Z | OWNER | Hmm... we need the ability to pass `--not-null` when we are creating a table as well. If you attempt to add `NOT NULL` to a column after a table has first been created you get this error: ```sqlite3.OperationalError: Cannot add a NOT NULL column with default value NULL``` | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
449818897 | |
https://github.com/simonw/sqlite-utils/issues/24#issuecomment-499603495 | https://api.github.com/repos/simonw/sqlite-utils/issues/24 | 499603495 | MDEyOklzc3VlQ29tbWVudDQ5OTYwMzQ5NQ== | 9599 | 2019-06-06T18:02:20Z | 2019-06-06T18:02:20Z | OWNER | This seems reasonable. It could look like this: ```python db["dogs"].add_column("instagram", str, not_null=True) db["dogs"].add_column("is_good_dog", bool, default=True) ``` And this: ```bash $ sqlite-utils add-column mydb.db dogs instagram --not-null $ sqlite-utils add-column mydb.db dogs is_good_dog integer --default=1 ``` | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
449818897 |