home / github

Menu
  • Search all tables
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

2 rows where issue = 1595340692 and user = 9599 sorted by updated_at descending

✖
✖
✖

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: created_at (date), updated_at (date)

user 1

  • simonw · 2 ✖

issue 1

  • add ability to configure "on delete" and "on update" attributes of foreign keys: · 2 ✖

author_association 1

  • OWNER 2
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions issue performed_via_github_app
1539018912 https://github.com/simonw/sqlite-utils/issues/530#issuecomment-1539018912 https://api.github.com/repos/simonw/sqlite-utils/issues/530 IC_kwDOCGYnMM5bu5Cg simonw 9599 2023-05-08T20:39:00Z 2023-05-08T20:39:00Z OWNER

I think the natural place to add these in the Python library API would be https://sqlite-utils.datasette.io/en/stable/python-api.html#adding-foreign-key-constraints - maybe something like this:

python db["books"].add_foreign_key("author_id", "authors", "id", on_delete=RESTRICT)

Then for the CLI tool could be added to https://sqlite-utils.datasette.io/en/stable/cli-reference.html#add-foreign-key

sqlite-utils add-foreign-key my.db books author_id authors id --on-update SET_NULL I wouldn't support these for the other methods of adding foreign keys - foreign_keys(...) for the various .insert() etc methods and the add_foreign_keys(...) bulk menthod.

{
    "total_count": 1,
    "+1": 0,
    "-1": 0,
    "laugh": 1,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
add ability to configure "on delete" and "on update" attributes of foreign keys: 1595340692  
1539015064 https://github.com/simonw/sqlite-utils/issues/530#issuecomment-1539015064 https://api.github.com/repos/simonw/sqlite-utils/issues/530 IC_kwDOCGYnMM5bu4GY simonw 9599 2023-05-08T20:35:07Z 2023-05-08T20:35:07Z OWNER

Wow, this is a neat feature I didn't know about. Looks like there are a bunch of options:

  • NO ACTION (default)
  • RESTRICT: application is prohibited from deleting a parent key when there exists one or more child keys mapped to it
  • SET NULL: when a parent key is deleted the child key columns of all rows in the child table that mapped to the parent key are set to contain SQL NULL values
  • SET DEFAULT: set a specific default
  • CASCADE: propagates the delete or update operation on the parent key to each dependent child key
{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
add ability to configure "on delete" and "on update" attributes of foreign keys: 1595340692  

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [issue_comments] (
   [html_url] TEXT,
   [issue_url] TEXT,
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [created_at] TEXT,
   [updated_at] TEXT,
   [author_association] TEXT,
   [body] TEXT,
   [reactions] TEXT,
   [issue] INTEGER REFERENCES [issues]([id])
, [performed_via_github_app] TEXT);
CREATE INDEX [idx_issue_comments_issue]
                ON [issue_comments] ([issue]);
CREATE INDEX [idx_issue_comments_user]
                ON [issue_comments] ([user]);
Powered by Datasette · Queries took 573.559ms · About: github-to-sqlite
  • Sort ascending
  • Sort descending
  • Facet by this
  • Hide this column
  • Show all columns
  • Show not-blank rows