{"id": 753668177, "node_id": "MDU6SXNzdWU3NTM2NjgxNzc=", "number": 1116, "title": "GENERATED column support", "user": {"value": 2789593, "label": "nattaylor"}, "state": "closed", "locked": 0, "assignee": null, "milestone": null, "comments": 9, "created_at": "2020-11-30T17:33:47Z", "updated_at": "2020-11-30T21:29:59Z", "closed_at": "2020-11-30T21:29:59Z", "author_association": "NONE", "pull_request": null, "body": "I think this is a feature request... perhaps I should just try to contribute it myself, but thought I'd check in case support is planned already.\r\n\r\nFor a table with the following schema, datasette 0.51.1 doesn't pick up the GENERATED columns and the column list only contains `(rowid, body)` If I edit the SQL and select the generated columns, it will happily show them.\r\n\r\nAt first glance it appears that [`def table_column_details(conn, table):`](https://github.com/simonw/datasette/blob/4777362bf2692bc72b221ec47c3e6216151d1b89/datasette/utils/__init__.py#L575) would have to be refactored to use a different methodology to get the columns, since `PRAGMA table_info(deeds);` returns just `0|body|TEXT|0||0` so maybe it wouldn't be worth it.\r\n\r\n```\r\nCREATE TABLE deeds (\r\n body TEXT,\r\n id INT GENERATED ALWAYS AS (json_extract(body, '$.id')) STORED,\r\n consideration INT GENERATED ALWAYS AS (json_extract(body, '$.consideration')) STORED\r\n);\r\n```", "repo": {"value": 107914493, "label": "datasette"}, "type": "issue", "active_lock_reason": null, "performed_via_github_app": null, "reactions": "{\"url\": \"https://api.github.com/repos/simonw/datasette/issues/1116/reactions\", \"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "draft": null, "state_reason": "completed"}