docs-v2/content/shared/influxdb3-cli/create/table.md

4.7 KiB
Raw Blame History

The influxdb3 create table command creates a table in a database.

Usage

influxdb3 create table [OPTIONS] \
  --tags [<TAGS>...] \
  --database <DATABASE_NAME> \
  --token <AUTH_TOKEN> \
  <TABLE_NAME>

Arguments

  • TABLE_NAME: The name of the table to create.

Options

Option Description
-H --host Host URL of the running {{< product-name >}} server (default is http://127.0.0.1:8181)
-d --database ({{< req >}}) Name of the database to operate on
--token ({{< req >}}) Authentication token
--tags ({{< req >}}) Comma-separated list of tag columns to include in the table
--fields Comma-separated list of field columns and their types to include in the table
--tls-ca Path to a custom TLS certificate authority (for testing or self-signed certificates)
-h --help Print help information
--help-all Print detailed help information

[!Important]

Tag and field naming requirements

Tag and field keys are alphanumeric and must start with a letter or number. They can contain dashes (-) and underscores (_).

Option environment variables

You can use the following environment variables to set command options:

Environment Variable Option
INFLUXDB3_HOST_URL --host
INFLUXDB3_DATABASE_NAME --database
INFLUXDB3_AUTH_TOKEN --token

Examples

In the examples below, replace the following:

  • {{% code-placeholder-key %}}DATABASE_NAME{{% /code-placeholder-key %}}: Database name
  • {{% code-placeholder-key %}}AUTH_TOKEN{{% /code-placeholder-key %}}: Authentication token
  • {{% code-placeholder-key %}}TABLE_NAME{{% /code-placeholder-key %}}: Table name

{{% code-placeholders "(DATABASE|TABLE)_NAME" %}}

Create a table

influxdb3 create table \
  --tags tag1,tag2,tag3 \
  --database DATABASE_NAME \
  --token AUTH_TOKEN \
  TABLE_NAME

Create a table with tag and field columns

influxdb3 create table \
  --tags room,sensor_id \
  --fields temp:float64,hum:float64,co:int64 \
  --database DATABASE_NAME \
  --token AUTH_TOKEN \
  TABLE_NAME

Verification

Use the following command to confirm that your table was created:

influxdb3 query \
  --database DATABASE_NAME \
  --token AUTH_TOKEN \
  "SHOW TABLES"

If successful, youll see a list of tables in the specified database, including the new one. The expected output should look similar to:

+---------------+--------------------+----------------------------+------------+
| table_catalog | table_schema       | table_name                 | table_type |
+---------------+--------------------+----------------------------+------------+
| public        | iox                | my_sensor_table            | BASE TABLE |
| public        | system             | distinct_caches            | BASE TABLE |
| public        | system             | last_caches                | BASE TABLE |
| public        | system             | parquet_files              | BASE TABLE |
| public        | system             | processing_engine_logs     | BASE TABLE |
| public        | system             | processing_engine_triggers | BASE TABLE |
| public        | system             | queries                    | BASE TABLE |
| public        | information_schema | tables                     | VIEW       |
| public        | information_schema | views                      | VIEW       |
| public        | information_schema | columns                    | VIEW       |
| public        | information_schema | df_settings                | VIEW       |
| public        | information_schema | schemata                   | VIEW       |
+---------------+--------------------+----------------------------+------------+

[!Note] The SHOW TABLES SQL query must be run using the influxdb3 query CLI. HTTP requests to /api/v3/query are not supported in local or OSS builds of {{< product-name >}}.

{{% /code-placeholders %}}