Create Table
Creates a new table or collection. If a new table is being created, the type of the table is given by input parameter type_id, which must the be the ID of a currently registered type (i.e. one created via Create Type). The table will be created inside a collection if the option collection_name is specified. If that collection does not already exist, it will be created.
To create a new collection, specify the name of the collection in input parameter table_name and set the is_collection option to true; input parameter type_id will be ignored.
Name |
Type |
Description |
table_name |
string |
Name of the table to be created. Error for requests with existing table of the same name and type id may be suppressed by using the no_error_if_exists option. See Tables for naming restrictions. |
type_id |
string |
ID of a currently registered type. All objects added to the newly created table will be of this type. Ignored if is_collection is true. |
options |
map of
string
to
strings |
Optional parameters. Default value is an empty map ( {} ).
Supported Parameters (keys) |
Parameter Description |
no_error_if_exists |
If true, prevents an error from occurring if the table already exists and is of the given type. If a table with the same ID but a different type exists, it is still an error. Default value is 'false'. The allowed values are:
|
collection_name |
Name of a collection which is to contain the newly created table. If the collection provided is non-existent, the collection will be automatically created. If empty, then the newly created table will be a top-level table. |
is_collection |
Indicates whether the new table to be created will be a collection. Default value is 'false'. The allowed values are:
|
disallow_homogeneous_tables |
For a collection, indicates whether the collection prohibits containment of multiple tables of exactly the same data type. Default value is 'false'. The allowed values are:
|
is_replicated |
For a table, indicates the distribution scheme for the table's data. If true, the table will be replicated. If false, the table will be sharded according to the shard key specified in the given input parameter type_id, or randomly sharded, if no shard key is specified. Default value is 'false'. The allowed values are:
|
foreign_keys |
Semicolon-separated list of foreign keys, of the format 'source_column references target_table(primary_key_column) [ as <foreign_key_name> ]'. |
foreign_shard_key |
Foreign shard key of the format 'source_column references shard_by_column from target_table(primary_key_column)' |
ttl |
For a table, sets the TTL of the table specified in input parameter table_name. |
chunk_size |
Indicates the chunk size to be used for this table. |
is_result_table |
For a table, indicates whether the table is an in-memory table. A result table cannot contain store_only, text_search, or string columns (charN columns are acceptable), and it will not be retained if the server is restarted. Default value is 'false'. The allowed values are:
|
|
Name |
Type |
Description |
table_name |
string |
Value of input parameter table_name. |
type_id |
string |
Value of input parameter type_id. |
is_collection |
boolean |
Indicates if the created entity is a
collection. |