From be9ff6494002a16351938dac4ddd4a8a631c75aa Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Sun, 14 Jul 2019 21:00:12 -0700 Subject: [PATCH] Docs for compound primary keys with CLI --- docs/cli.rst | 2 ++ sqlite_utils/cli.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/cli.rst b/docs/cli.rst index db1954c..cb9574c 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -200,6 +200,8 @@ Here's the simplest possible example:: To specify a column as the primary key, use ``--pk=column_name``. +To create a compound primary key across more than one column, use ``--pk`` multiple times. + If you feed it a JSON list it will insert multiple records. For example, if ``dogs.json`` looks like this:: [ diff --git a/sqlite_utils/cli.py b/sqlite_utils/cli.py index 34228e4..c902295 100644 --- a/sqlite_utils/cli.py +++ b/sqlite_utils/cli.py @@ -302,7 +302,7 @@ def insert_upsert_options(fn): ), click.argument("table"), click.argument("json_file", type=click.File(), required=True), - click.option("--pk", help="Column to use as the primary key, e.g. id", multiple=True), + click.option("--pk", help="Columns to use as the primary key, e.g. id", multiple=True), click.option("--nl", is_flag=True, help="Expect newline-delimited JSON"), click.option("-c", "--csv", is_flag=True, help="Expect CSV"), click.option(