Comando .create ingestion mapping

Crea una asignación de ingesta que se puede asociar a un formato específico y una tabla o base de datos específica.

Si ya existe una asignación con el mismo nombre en el ámbito especificado, .create se producirá un error. En su lugar, use .create-or-alter.

Permisos

Se requieren al menos permisos de ingestión de base de datos para crear una asignación de ingesta de base de datos y se necesitan al menos permisos de ingesta de tablas para crear una asignación de ingesta de tabla.

Syntax

.createtableTablenameingestionMappingKindmappingMappingNameMappingFormattedAsJson

.createdatabaseDatabasenameingestionMappingKindmappingMappingNameMappingFormattedAsJson

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
TableName string ✔️ Nombre de la tabla.
DatabaseName string ✔️ El nombre de la base de datos.
MappingKind string ✔️ Tipo de asignación. Los valores válidos son: csv, json, avro, parquet y orc.
MappingName string ✔️ Nombre de la asignación.
MappingFormattedAsJson string ✔️ Definición de asignación de ingesta con formato JSON.

Nota

  • Una vez creada, se puede hacer referencia a la asignación por su nombre en los comandos de ingesta, en lugar de especificar la asignación completa como parte del comando .
  • Si se crea una asignación con el mismo nombre tanto en el ámbito de tabla como en el ámbito de la base de datos, la asignación en el ámbito de tabla tendrá una prioridad más alta.
  • Al ingerir en una tabla y hacer referencia a una asignación cuyo esquema no coincide con el esquema de tabla ingerida, se producirá un error en la operación de ingesta.

Ejemplos

.create table MyTable ingestion csv mapping "Mapping1"
'['
'   { "column" : "rownumber", "DataType":"int", "Properties":{"Ordinal":"0"}},'
'   { "column" : "rowguid", "DataType":"string", "Properties":{"Ordinal":"1"}}'
']'

.create database MyDatabase ingestion csv mapping "Mapping2"
'['
'   { "column" : "rownumber", "DataType":"int", "Properties":{"Ordinal":"0"}},'
'   { "column" : "rowguid", "DataType":"string", "Properties":{"Ordinal":"1"}}'
']'

Salida

Nombre Kind Asignación Base de datos Tabla
mapping1 CSV [{"Name":"rownumber","DataType":"int","CsvDataType":null,"Ordinal":0,"ConstValue":null},{"Name":"rowguid","DataType":"string","CsvDataType":null,"Ordinal":1,"ConstValue":null}] MyDatabase MyTable
mapping2 CSV [{"Name":"rownumber","DataType":"int","CsvDataType":null,"Ordinal":0,"ConstValue":null},{"Name":"rowguid","DataType":"string","CsvDataType":null,"Ordinal":1,"ConstValue":null}] MyDatabase

Ejemplo: asignación de ingesta .create con caracteres de escape

.create table test_table ingestion json mapping "test_mapping_name"
'['
'{"column":"timeStamp","path":"$[\'timeStamp\']","datatype":"","transform":null},{"column":"name","path":"$[\'name\']","datatype":"","transform":null},{"column":"x-opt-partition-key","path":"$[\'x-opt-partition-key\']","datatype":"","transform":null}'
']'
  • Para obtener descripciones detalladas de varios formatos de asignación de ingesta, como CSV, JSON, Avro, Parquet y Orc, consulte Asignaciones de datos.