.ingest inline command (push)

This command ingests data into a table by "pushing" the data that is embedded inline, in the command text itself.


This command is intended for manual ad-hoc testing. For production use, we recommended that you use other ingestion methods that are better for bulk delivery of huge amounts of data, such as ingest from storage or ingest from query.


You must have at least Table Ingestor permissions to run this command.


.ingest inline into table TableName [with ( IngestionPropertyName = IngestionPropertyValue [, ...] )] <| Data


Name Type Required Description
TableName string The name of the table into which to ingest data. The table name is always relative to the database in context, and its schema is the schema that will be assumed for the data if no schema mapping object is provided.
Data string The data content to ingest. Unless otherwise modified by the ingestion properties, this content is parsed as CSV.
IngestionPropertyName, IngestionPropertyValue string Any number of ingestion properties that affect the ingestion process.


Unlike most control commands and queries, the text of the Data part of the command doesn't have to follow the syntactic conventions of the language. For example, whitespace characters are important, or the // combination isn't treated as a comment.


The result is a table with as many records as the number of generated data shards ("extents"). If no data shards are generated, a single record is returned with an empty (zero-valued) extent ID.

Name Type Description
ExtentId guid The unique identifier for the data shard that was generated by the command


The following command ingests data into a table (Purchases) with two columns, SKU (of type string) and Quantity (of type long).

.ingest inline into table Purchases <|
Wide Shoes,50
"Coats, black",20
"Coats with ""quotes""",5

See also