CREATE FILE FORMAT¶

Crée un format de fichier nommé qui décrit un ensemble de données en zone de préparation à accéder ou à charger dans des tables Snowflake.

Cette commande prend en charge les variantes suivantes :

  • CREATE OR ALTER FILE FORMAT : crĂ©e un format de fichier nommĂ© s’il n’existe pas ou modifie un format de fichier existant.

Voir aussi :

ALTER FILE FORMAT , DROP FILE FORMAT , SHOW FILE FORMATS , DESCRIBE FILE FORMAT

COPY INTO <emplacement> , COPY INTO <table> , CREATE OR ALTER <objet>

Syntaxe¶

CREATE [ OR REPLACE ] [ { TEMP | TEMPORARY | VOLATILE } ] FILE FORMAT [ IF NOT EXISTS ] <name>
  [ TYPE = { CSV | JSON | AVRO | ORC | PARQUET | XML | CUSTOM} [ formatTypeOptions ] ]
  [ COMMENT = '<string_literal>' ]
Copy

OĂč :

formatTypeOptions ::=
-- If TYPE = CSV
     COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
     RECORD_DELIMITER = '<string>' | NONE
     FIELD_DELIMITER = '<string>' | NONE
     MULTI_LINE = TRUE | FALSE
     FILE_EXTENSION = '<string>'
     PARSE_HEADER = TRUE | FALSE
     SKIP_HEADER = <integer>
     SKIP_BLANK_LINES = TRUE | FALSE
     DATE_FORMAT = '<string>' | AUTO
     TIME_FORMAT = '<string>' | AUTO
     TIMESTAMP_FORMAT = '<string>' | AUTO
     BINARY_FORMAT = HEX | BASE64 | UTF8
     ESCAPE = '<character>' | NONE
     ESCAPE_UNENCLOSED_FIELD = '<character>' | NONE
     TRIM_SPACE = TRUE | FALSE
     FIELD_OPTIONALLY_ENCLOSED_BY = '<character>' | NONE
     NULL_IF = ( '<string>' [ , '<string>' ... ] )
     ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE | FALSE
     REPLACE_INVALID_CHARACTERS = TRUE | FALSE
     EMPTY_FIELD_AS_NULL = TRUE | FALSE
     SKIP_BYTE_ORDER_MARK = TRUE | FALSE
     ENCODING = '<string>' | UTF8
-- If TYPE = JSON
     COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
     DATE_FORMAT = '<string>' | AUTO
     TIME_FORMAT = '<string>' | AUTO
     TIMESTAMP_FORMAT = '<string>' | AUTO
     BINARY_FORMAT = HEX | BASE64 | UTF8
     TRIM_SPACE = TRUE | FALSE
     MULTI_LINE = TRUE | FALSE
     NULL_IF = ( '<string>' [ , '<string>' ... ] )
     FILE_EXTENSION = '<string>'
     ENABLE_OCTAL = TRUE | FALSE
     ALLOW_DUPLICATE = TRUE | FALSE
     STRIP_OUTER_ARRAY = TRUE | FALSE
     STRIP_NULL_VALUES = TRUE | FALSE
     REPLACE_INVALID_CHARACTERS = TRUE | FALSE
     IGNORE_UTF8_ERRORS = TRUE | FALSE
     SKIP_BYTE_ORDER_MARK = TRUE | FALSE
-- If TYPE = AVRO
     COMPRESSION = AUTO | GZIP | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
     TRIM_SPACE = TRUE | FALSE
     REPLACE_INVALID_CHARACTERS = TRUE | FALSE
     NULL_IF = ( '<string>' [ , '<string>' ... ] )
-- If TYPE = ORC
     TRIM_SPACE = TRUE | FALSE
     REPLACE_INVALID_CHARACTERS = TRUE | FALSE
     NULL_IF = ( '<string>' [ , '<string>' ... ] )
-- If TYPE = PARQUET
     COMPRESSION = AUTO | LZO | SNAPPY | NONE
     SNAPPY_COMPRESSION = TRUE | FALSE
     BINARY_AS_TEXT = TRUE | FALSE
     USE_LOGICAL_TYPE = TRUE | FALSE
     TRIM_SPACE = TRUE | FALSE
     USE_VECTORIZED_SCANNER = TRUE | FALSE
     REPLACE_INVALID_CHARACTERS = TRUE | FALSE
     NULL_IF = ( '<string>' [ , '<string>' ... ] )
-- If TYPE = XML
     COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
     IGNORE_UTF8_ERRORS = TRUE | FALSE
     PRESERVE_SPACE = TRUE | FALSE
     STRIP_OUTER_ELEMENT = TRUE | FALSE
     DISABLE_AUTO_CONVERT = TRUE | FALSE
     REPLACE_INVALID_CHARACTERS = TRUE | FALSE
     SKIP_BYTE_ORDER_MARK = TRUE | FALSE
Copy

Syntaxe des variantes¶

CREATE OR ALTER FILE FORMAT¶

CrĂ©e un nouveau format de fichier nommĂ© s’il n’existe pas dĂ©jĂ , ou transforme un format de fichier existant en celui dĂ©fini dans l’instruction. Une instruction CREATE OR ALTER FILEFORMAT suit les rĂšgles syntaxiques d’une instruction CREATE FILEFORMAT et prĂ©sente les mĂȘmes limitations qu’une instruction ALTER FILE FORMAT.

Les modifications prises en charge comprennent les changements des propriétés formatTypeOptions et COMMENT. Vous ne pouvez pas modifier la propriété TYPE.

Pour plus d’informations, voir Notes sur l’utilisation de CREATE OR ALTER FILEFORMAT.

CREATE OR ALTER [ { TEMP | TEMPORARY | VOLATILE } ] FILE FORMAT <name>
  [ TYPE = { CSV | JSON | AVRO | ORC | PARQUET | XML | CUSTOM } [ formatTypeOptions ] ]
  [ COMMENT = '<string_literal>' ]
Copy

ParamÚtres requis¶

name

Indique l’identificateur du format de fichier ; il doit ĂȘtre unique pour le schĂ©ma dans lequel le format de fichier est créé.

La valeur de l’identificateur doit commencer par un caractĂšre alphabĂ©tique et ne peut pas contenir d’espaces ou de caractĂšres spĂ©ciaux Ă  moins que toute la chaĂźne d’identificateur soit dĂ©limitĂ©e par des guillemets doubles (par exemple "My object"). Les identificateurs entre guillemets doubles sont Ă©galement sensibles Ă  la casse.

Pour plus de dĂ©tails, voir Exigences relatives Ă  l’identificateur.

ParamÚtres facultatifs¶

{ TEMP | TEMPORARY | VOLATILE }

SpĂ©cifie que le format du fichier ne persiste que pendant la durĂ©e de la session dans laquelle vous l’avez créé. Un format de fichier temporaire est supprimĂ© Ă  la fin de la session.

Par dĂ©faut : aucune valeur. Si un format de fichier n’est pas dĂ©clarĂ© comme TEMPORARY, le format de fichier est permanent.

Si vous voulez Ă©viter des conflits inattendus, Ă©vitez de nommer les formats de fichiers temporaires d’aprĂšs des formats de fichiers qui existent dĂ©jĂ  dans le schĂ©ma.

Si vous avez créé un format de fichier temporaire portant le mĂȘme nom qu’un autre format de fichier du schĂ©ma, toutes les requĂȘtes et opĂ©rations utilisĂ©es sur le format de fichier n’affectent que le format de fichier temporaire dans la session, jusqu’à ce que vous supprimiez le format de fichier temporaire. Si vous supprimez le format de fichier Ă  l’aide d’une commande DROP FILE FORMAT, vous supprimez le format de fichier temporaire et non le format de fichier qui existe dĂ©jĂ  dans le schĂ©ma.

TYPE = CSV | JSON | AVRO | ORC | PARQUET | XML [ ... ]

SpĂ©cifie le format des fichiers d’entrĂ©e (pour le chargement des donnĂ©es) ou de sortie (pour le dĂ©chargement des donnĂ©es). Suivant le type de format, vous pouvez spĂ©cifier des options supplĂ©mentaires spĂ©cifiques au format. Pour plus d’informations, voir Options de type de format (dans cette rubrique).

Les valeurs valides varient suivant que le format de fichier est destinĂ© au chargement ou au dĂ©chargement de donnĂ©es :

CSV (pour le chargement ou le déchargement)

Tout fichier texte brut, plat et dĂ©limitĂ© qui utilise des caractĂšres spĂ©cifiques tels que les suivants :

  • SĂ©parateurs de champs dans des enregistrements (par exemple, virgules).

  • SĂ©parateurs d’enregistrements (par exemple, caractĂšres de retour Ă  la ligne).

Bien que le nom (CSV) suggĂšre des valeurs sĂ©parĂ©es par des virgules, vous pouvez utiliser n’importe quel caractĂšre valide comme sĂ©parateur de champ.

JSON (pour le chargement ou le déchargement)

Tout fichier texte brut contenant un ou plusieurs documents JSON (tels que des objets ou des tableaux). JSON est un format de fichier semi-structurĂ©. Les documents peuvent ĂȘtre sĂ©parĂ©s par des virgules et Ă©ventuellement inclus dans un grand tableau. Un seul document JSON peut s’étendre sur plusieurs lignes.

Note

  • Lorsque vous chargez des donnĂ©es Ă  partir de fichiers dans des tables, Snowflake prend en charge soit le format standard NDJSON (JSON dĂ©limitĂ© par des retours Ă  la ligne), soit le format JSON sĂ©parĂ© par des virgules.

  • Lorsque vous dĂ©chargez des donnĂ©es de table dans des fichiers, la sortie de Snowflake se prĂ©sente uniquement au format NDJSON.

AVRO (pour le chargement uniquement ; vous ne pouvez pas dĂ©charger de donnĂ©es au format AVRO)

Fichier binaire au format AVRO.

ORC (pour le chargement uniquement ; vous ne pouvez pas dĂ©charger de donnĂ©es au format ORC)

Fichier binaire au format ORC.

PARQUET (pour le chargement ou le déchargement)

Fichier binaire au format PARQUET.

XML (pour le chargement uniquement ; vous ne pouvez pas dĂ©charger de donnĂ©es au format XML)

Fichier texte brut contenant des éléments XML.

CUSTOM (pour charger les données non structurées uniquement)

Ce type de format spĂ©cifie que la zone de prĂ©paration sous-jacente contient des donnĂ©es non structurĂ©es et ne peut ĂȘtre utilisĂ©e qu’avec l’option de copie FILE_PROCESSOR.

Pour plus d’informations sur le format CSV, voir Notes sur l’utilisation dans cette rubrique. Pour plus d’informations sur le format JSON et sur les autres formats de fichiers semi-structurĂ©s, voir Introduction au chargement de donnĂ©es semi-structurĂ©es. Pour plus d’informations sur le type CUSTOM, voir Chargement de donnĂ©es non structurĂ©es avec Document AI.

Par dĂ©faut : CSV

COMMENT = 'string_literal'

Spécifie un commentaire pour le format de fichier.

Par dĂ©faut : aucune valeur

Options de type de format (formatTypeOptions)¶

En fonction du type de format de fichier spĂ©cifiĂ© (TYPE = ...), vous pouvez inclure une ou plusieurs des options suivantes, spĂ©cifiques au format (sĂ©parĂ©es par des espaces, des virgules ou de nouvelles lignes) :

TYPE = CSV¶

COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:
  • Lors du chargement des donnĂ©es, spĂ©cifie l’algorithme de compression actuel pour le fichier de donnĂ©es. Snowflake utilise cette option pour dĂ©tecter comment un fichier de donnĂ©es dĂ©jĂ  compressĂ© a Ă©tĂ© compressĂ© afin que les donnĂ©es compressĂ©es dans le fichier puissent ĂȘtre extraites pour le chargement.

  • Lors du dĂ©chargement des donnĂ©es, compresse le fichier de donnĂ©es en utilisant l’algorithme de compression spĂ©cifiĂ©.

Valeurs:

Valeurs prises en charge

Remarques

AUTO

Lors du chargement des donnĂ©es, l’algorithme de compression est dĂ©tectĂ© automatiquement, sauf pour les fichiers compressĂ©s par Brotli, qui ne peuvent actuellement pas ĂȘtre dĂ©tectĂ©s automatiquement. Lors du dĂ©chargement des donnĂ©es, les fichiers sont automatiquement compressĂ©s en utilisant la valeur par dĂ©faut, qui est gzip.

GZIP

BZ2

BROTLI

Doit ĂȘtre spĂ©cifiĂ© lors du chargement/dĂ©chargement de fichiers compressĂ©s Brotli.

ZSTD

Zstandard v0.8 (et supérieur) est pris en charge.

DEFLATE

Fichiers compressĂ©s Deflate (avec en-tĂȘte zlib, RFC1950).

RAW_DEFLATE

Fichiers bruts compressĂ©s Deflate (sans en-tĂȘte, RFC1951).

NONE

Lors du chargement des donnĂ©es, indique que les fichiers n’ont pas Ă©tĂ© compressĂ©s. Lors du dĂ©chargement des donnĂ©es, spĂ©cifie que les fichiers dĂ©chargĂ©s ne sont pas compressĂ©s.

Par défaut:

AUTO

RECORD_DELIMITER = 'string' | NONE
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:

Un ou plusieurs caractĂšres Ă  un octet ou Ă  plusieurs octets qui sĂ©parent les enregistrements dans un fichier d’entrĂ©e (chargement de donnĂ©es) ou un fichier dĂ©chargĂ© (dĂ©chargement de donnĂ©es). Accepte les sĂ©quences d’échappement courantes ou les caractĂšres Ă  un octet ou Ă  plusieurs octets suivants :

CaractĂšres Ă  un octet:

Valeurs octales (préfixées par \\) ou les valeurs hexadécimales (préfixées par \x ou 0x). Par exemple, pour les enregistrements délimités par le caractÚre accent circonflexe (^), spécifiez la valeur octale (\\136) ou hexadécimale (0x5e).

CaractĂšres multi-octets:

Valeurs hexagonales (préfixées par \x). Par exemple, pour les enregistrements délimités par le caractÚre cent (¹), spécifiez la valeur hexadécimale (\xC2\xA2).

Le dĂ©limiteur pour RECORD_DELIMITER ou FIELD_DELIMITER ne peut pas ĂȘtre une sous-chaĂźne du dĂ©limiteur pour l’autre option de format de fichier (par exemple, FIELD_DELIMITER = 'aa' RECORD_DELIMITER = 'aabb').

Le dĂ©limiteur spĂ©cifiĂ© doit ĂȘtre un caractĂšre UTF-8 valide et non une sĂ©quence alĂ©atoire d’octets. Notez Ă©galement que le dĂ©limiteur est limitĂ© Ă  un maximum de 20 caractĂšres.

Accepte également une valeur de NONE.

Par défaut:
Chargement des données:

CaractĂšre de nouvelle ligne. Notez que « nouvelle ligne Â» fait sens, de sorte que \r\n sera compris comme une nouvelle ligne pour les fichiers sur une plate-forme Windows.

Déchargement des données:

CaractĂšre de nouvelle ligne (\n).

FIELD_DELIMITER = 'string' | NONE
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:

Un ou plusieurs caractĂšres Ă  un octet ou Ă  plusieurs octets qui sĂ©parent les champs d’un fichier d’entrĂ©e (chargement de donnĂ©es) ou d’un fichier dĂ©chargĂ© (dĂ©chargement de donnĂ©es). Accepte les sĂ©quences d’échappement courantes ou les caractĂšres Ă  un octet ou Ă  plusieurs octets suivants :

CaractĂšres Ă  un octet:

Valeurs octales (préfixées par \\) ou les valeurs hexadécimales (préfixées par \x ou 0x). Par exemple, pour les enregistrements délimités par le caractÚre accent circonflexe (^), spécifiez la valeur octale (\\136) ou hexadécimale (0x5e).

CaractĂšres multi-octets:

Valeurs hexagonales (préfixées par \x). Par exemple, pour les enregistrements délimités par le caractÚre cent (¹), spécifiez la valeur hexadécimale (\xC2\xA2).

Le dĂ©limiteur pour RECORD_DELIMITER ou FIELD_DELIMITER ne peut pas ĂȘtre une sous-chaĂźne du dĂ©limiteur pour l’autre option de format de fichier (par exemple, FIELD_DELIMITER = 'aa' RECORD_DELIMITER = 'aabb').

Note

Pour les caractĂšres autres que ASCII, vous devez utiliser la valeur de la sĂ©quence d’octets hexagonale pour obtenir un comportement dĂ©terministe.

Le dĂ©limiteur spĂ©cifiĂ© doit ĂȘtre un caractĂšre UTF-8 valide et non une sĂ©quence alĂ©atoire d’octets. Notez Ă©galement que le dĂ©limiteur est limitĂ© Ă  un maximum de 20 caractĂšres.

Accepte également une valeur de NONE.

Par défaut:

virgule (,)

MULTI_LINE = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui spĂ©cifie si les lignes multiples sont autorisĂ©es. Si MULTI_LINE a pour valeur FALSE et que le dĂ©limiteur d’enregistrement spĂ©cifiĂ© est prĂ©sent dans un champ CSV, l’enregistrement contenant le champ sera interprĂ©tĂ© comme une erreur.

Par défaut:

TRUE

Note

Si vous chargez de gros fichiers non compressĂ©s CSV (supĂ©rieurs Ă  128MB) qui respectent la spĂ©cification RFC4180, Snowflake prend en charge l’analyse parallĂšle de ces fichiers CSV lorsque MULTI_LINE est paramĂ©trĂ© sur FALSE, COMPRESSION est paramĂ©trĂ© sur NONE ` and ON_ERROR is set to `` ABORT_STATEMENT `` or `` CONTINUE``.

FILE_EXTENSION = 'string' | NONE
Utilisation:

Déchargement des données uniquement

Définition:

SpĂ©cifie l’extension des fichiers dĂ©chargĂ©s dans une zone de prĂ©paration. Accepte toute extension. L’utilisateur est chargĂ© de spĂ©cifier une extension de fichier qui peut ĂȘtre lue par tout logiciel ou service dĂ©sirĂ©.

Par défaut:

null, ce qui signifie que l’extension du fichier est dĂ©terminĂ©e par le type de format : .csv[compression], oĂč compression est l’extension ajoutĂ©e par la mĂ©thode de compression, si COMPRESSION est dĂ©fini.

Note

Si l’option de copie SINGLE est TRUE, alors la commande COPY dĂ©charge un fichier sans extension par dĂ©faut. Pour spĂ©cifier une extension de fichier, fournissez un nom de fichier et une extension dans le chemin internal_location ou external_location (par exemple, copy into @stage/data.csv).

PARSE_HEADER = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut utiliser les en-tĂȘtes de la premiĂšre ligne des fichiers de donnĂ©es pour dĂ©terminer les noms des colonnes.

Cette option de format de fichier s’applique uniquement aux actions suivantes :

  • DĂ©tection automatique des dĂ©finitions de colonnes Ă  l’aide de la fonction INFER_SCHEMA.

  • Chargement de donnĂ©es CSV dans des colonnes sĂ©parĂ©es en utilisant la fonction INFER_SCHEMA et l’option de copie MATCH_BY_COLUMN_NAME.

Si l’option est dĂ©finie sur TRUE, les en-tĂȘtes de la premiĂšre ligne seront utilisĂ©s pour dĂ©terminer les noms des colonnes. La valeur par dĂ©faut FALSE renvoie les noms de colonnes sous la forme c , oĂč est la position de la colonne.

Note

  • Cette option n’est pas prise en charge pour les tables externes.

  • L’option SKIP_HEADER n’est pas prise en charge si vous dĂ©finissez PARSE_HEADER = TRUE.

Par défaut:

FALSE

SKIP_HEADER = integer
Utilisation:

Chargement de données et tables externes

Définition:

Nombre de lignes au début du fichier à ignorer.

Notez que SKIP_HEADER n’utilise pas les valeurs RECORD_DELIMITER ou FIELD_DELIMITER pour dĂ©terminer la nature d’une ligne d’en-tĂȘte. Au lieu de cela, il ignore simplement le nombre spĂ©cifiĂ© de lignes dĂ©limitĂ©es par CRLF (retour chariot, saut de ligne) dans le fichier. RECORD_DELIMITER et FIELD_DELIMITER sont ensuite utilisĂ©s pour dĂ©terminer les lignes de donnĂ©es Ă  charger.

Par défaut:

0

SKIP_BLANK_LINES = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui indique d’ignorer toutes les lignes vides rencontrĂ©es dans les fichiers de donnĂ©es ; sinon, les lignes vides produisent une erreur de fin d’enregistrement (comportement par dĂ©faut).

Par défaut:

FALSE

DATE_FORMAT = 'string' | AUTO
Utilisation:

Chargement et déchargement des données

Définition:

DĂ©finit le format des valeurs de date dans les fichiers de donnĂ©es (chargement des donnĂ©es) ou la table (dĂ©chargement des donnĂ©es). Si une valeur n’est pas spĂ©cifiĂ©e ou est AUTO, la valeur du paramĂštre DATE_INPUT_FORMAT (chargement de donnĂ©es) ou DATE_OUTPUT_FORMAT (dĂ©chargement de donnĂ©es) est utilisĂ©e.

Par défaut:

AUTO

TIME_FORMAT = 'string' | AUTO
Utilisation:

Chargement et déchargement des données

Définition:

DĂ©finit le format des valeurs temporelles dans les fichiers de donnĂ©es (chargement des donnĂ©es) ou la table (dĂ©chargement des donnĂ©es). Si une valeur n’est pas spĂ©cifiĂ©e ou est AUTO, la valeur du paramĂštre TIME_INPUT_FORMAT (chargement de donnĂ©es) ou TIME_OUTPUT_FORMAT (dĂ©chargement de donnĂ©es) est utilisĂ©e.

Par défaut:

AUTO

TIMESTAMP_FORMAT = string' | AUTO
Utilisation:

Chargement et déchargement des données

Définition:

DĂ©finit le format des valeurs d’horodatage dans les fichiers de donnĂ©es (chargement des donnĂ©es) ou la table (dĂ©chargement des donnĂ©es). Si une valeur n’est pas spĂ©cifiĂ©e ou est AUTO, la valeur du paramĂštre TIMESTAMP_INPUT_FORMAT (chargement de donnĂ©es) ou TIMESTAMP_OUTPUT_FORMAT (dĂ©chargement de donnĂ©es) est utilisĂ©e.

Par défaut:

AUTO

BINARY_FORMAT = HEX | BASE64 | UTF8
Utilisation:

Chargement et déchargement des données

Définition:

DĂ©finit le format d’encodage pour l’entrĂ©e ou la sortie binaire. L’option peut ĂȘtre utilisĂ©e pour charger ou dĂ©charger des donnĂ©es Ă  partir de colonnes binaires dans une table.

Par défaut:

HEX

ESCAPE = 'character' | NONE
Utilisation:

Chargement et déchargement des données

Définition:

ChaĂźne de caractĂšres Ă  un octet utilisĂ©e comme caractĂšre d’échappement pour les valeurs de champs dĂ©limitĂ©es ou non dĂ©limitĂ©es. Un caractĂšre d’échappement appelle une autre interprĂ©tation sur les caractĂšres suivants dans une sĂ©quence de caractĂšres. Vous pouvez utiliser le caractĂšre ESCAPE pour interprĂ©ter les instances du caractĂšre FIELD_OPTIONALLY_ENCLOSED_BY ou dans les donnĂ©es comme des littĂ©raux.

Accepte les sĂ©quences d’échappement, les valeurs octales ou les valeurs hexadĂ©cimales courantes.

Chargement des données:

SpĂ©cifie le caractĂšre d’échappement pour les champs dĂ©limitĂ©s uniquement. SpĂ©cifiez le caractĂšre utilisĂ© pour dĂ©limiter les champs en dĂ©finissant FIELD_OPTIONALLY_ENCLOSED_BY.

Note

Cette option de format de fichier ne prend en charge que les caractĂšres Ă  un seul octet. Notez que le codage des caractĂšres UTF-8 reprĂ©sente les caractĂšres ASCII d’ordre supĂ©rieur comme des caractĂšres Ă  plusieurs octets. Si votre fichier de donnĂ©es est codĂ© avec le jeu de caractĂšres UTF-8, vous ne pouvez pas spĂ©cifier un caractĂšre ASCII d’ordre supĂ©rieur comme valeur d’option.

En outre, si vous spĂ©cifiez un caractĂšre ASCII d’ordre Ă©levĂ©, nous vous recommandons de dĂ©finir l’option de format de fichier ENCODING = 'string' comme codage de caractĂšres pour vos fichiers de donnĂ©es afin de garantir la bonne interprĂ©tation du caractĂšre.

Déchargement des données:

Si cette option est activĂ©e, elle remplace le jeu de caractĂšres d’échappement pour ESCAPE_UNENCLOSED_FIELD.

Par défaut:

NONE

ESCAPE_UNENCLOSED_FIELD = 'character' | NONE
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:

ChaĂźne de caractĂšres Ă  un octet utilisĂ©e comme caractĂšre d’échappement pour les valeurs de champs non dĂ©limitĂ©es uniquement. Un caractĂšre d’échappement appelle une autre interprĂ©tation sur les caractĂšres suivants dans une sĂ©quence de caractĂšres. Vous pouvez utiliser le caractĂšre ESCAPE pour interprĂ©ter les instances des caractĂšres FIELD_DELIMITER ou RECORD_DELIMITER dans les donnĂ©es comme des littĂ©raux. Le caractĂšre d’échappement peut Ă©galement ĂȘtre utilisĂ© pour Ă©chapper les instances de lui-mĂȘme dans les donnĂ©es.

Accepte les sĂ©quences d’échappement, les valeurs octales ou les valeurs hexadĂ©cimales courantes.

Chargement des données:

SpĂ©cifie le caractĂšre d’échappement pour les champs non dĂ©limitĂ©s uniquement.

Note

  • La valeur par dĂ©faut est \\. Si une ligne d’un fichier de donnĂ©es se termine par une barre oblique inverse (\), ce caractĂšre Ă©chappe le caractĂšre de nouvelle ligne ou de retour chariot spĂ©cifiĂ© pour l’option de format de fichier RECORD_DELIMITER. Par consĂ©quent, l’opĂ©ration de chargement considĂšre cette ligne et la suivante comme une seule ligne de donnĂ©es. Pour Ă©viter ce problĂšme, dĂ©finissez la valeur sur NONE.

  • Cette option de format de fichier ne prend en charge que les caractĂšres Ă  un seul octet. Notez que le codage des caractĂšres UTF-8 reprĂ©sente les caractĂšres ASCII d’ordre supĂ©rieur comme des caractĂšres Ă  plusieurs octets. Si votre fichier de donnĂ©es est codĂ© avec le jeu de caractĂšres UTF-8, vous ne pouvez pas spĂ©cifier un caractĂšre ASCII d’ordre supĂ©rieur comme valeur d’option.

    En outre, si vous spĂ©cifiez un caractĂšre ASCII d’ordre Ă©levĂ©, nous vous recommandons de dĂ©finir l’option de format de fichier ENCODING = 'string' comme codage de caractĂšres pour vos fichiers de donnĂ©es afin de garantir la bonne interprĂ©tation du caractĂšre.

Déchargement des données:

Si ESCAPE est dĂ©fini, le jeu de caractĂšres d’échappement pour cette option de format de fichier l’emporte sur cette option.

Par défaut:

barre oblique inverse (\\)

TRIM_SPACE = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui spĂ©cifie s’il faut supprimer les espaces blancs des champs.

Par exemple, si votre logiciel de base de donnĂ©es externe contient des champs entre guillemets, mais insĂšre un espace d’en-tĂȘte, Snowflake lit l’espace d’en-tĂȘte plutĂŽt que le caractĂšre guillemet comme dĂ©but du champ (c’est-Ă -dire que les guillemets sont interprĂ©tĂ©s comme faisant partie de la chaĂźne des donnĂ©es du champ). DĂ©finissez cette option sur TRUE pour supprimer les espaces indĂ©sirables pendant le chargement des donnĂ©es.

Comme autre exemple, si les espaces d’en-tĂȘte ou de fin entourent des guillemets qui dĂ©limitent les chaĂźnes de caractĂšres, vous pouvez supprimer les espaces environnants en utilisant cette option et le caractĂšre guillemet en utilisant l’option FIELD_OPTIONALLY_ENCLOSED_BY. Notez que tous les espaces entre les guillemets sont prĂ©servĂ©s. Par exemple, en supposant que FIELD_DELIMITER = '|' et FIELD_OPTIONALLY_ENCLOSED_BY = '"' :

|"Hello world"|    /* loads as */  >Hello world<
|" Hello world "|  /* loads as */  > Hello world <
| "Hello world" |  /* loads as */  >Hello world<
Copy

(les parenthĂšses dans cet exemple ne sont pas chargĂ©es ; elles sont utilisĂ©es pour dĂ©limiter le dĂ©but et la fin des chaĂźnes chargĂ©es)

Par défaut:

FALSE

FIELD_OPTIONALLY_ENCLOSED_BY = 'character' | NONE
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:

CaractĂšre utilisĂ© pour dĂ©limiter des chaĂźnes. La valeur peut ĂȘtre NONE, un caractĂšre guillemet simple (') ou un caractĂšre guillemet double ("). Pour utiliser le caractĂšre guillemet simple, utilisez la reprĂ©sentation octale ou hexadĂ©cimale (0x27) ou le double Ă©chappement en guillemet simple ('').

Déchargement des données uniquement:

Lorsqu’un champ de la table source contient ce caractĂšre, Snowflake effectue un Ă©chappement dessus en utilisant le mĂȘme caractĂšre que celui utilisĂ© pour le dĂ©chargement. Par exemple, si la valeur est le caractĂšre de guillemet double et qu’un champ contient la chaĂźne A "B" C, Snowflake effectue un Ă©chappement des guillemets doubles pour le dĂ©chargement comme suit :

A ""B"" C

Par défaut:

NONE

NULL_IF = ( 'string1' [ , 'string2' , ... ] )
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:

ChaĂźne utilisĂ©e pour les conversions entrante et sortante de SQL NULL :

  • Lors du chargement des donnĂ©es, Snowflake remplace ces valeurs de la source de chargement des donnĂ©es par SQL NULL. Pour spĂ©cifier plus d’une chaĂźne, mettez la liste des chaĂźnes entre parenthĂšses et utilisez des virgules pour sĂ©parer chaque valeur.

    Notez que Snowflake convertit toutes les instances de la valeur en NULL, quel que soit le type de données. Par exemple, si 2 est spécifié comme valeur, toutes les instances de 2 sous forme de chaßne ou de nombre sont converties.

    Par exemple :

    NULL_IF = ('\N', 'NULL', 'NUL', '')

    Notez que cette option peut inclure des chaĂźnes vides.

  • Lors du dĂ©chargement des donnĂ©es, Snowflake convertit les valeurs NULL SQL vers la premiĂšre valeur de la liste.

Par défaut:

\N (c’est-à-dire NULL, qui suppose que la ESCAPE_UNENCLOSED_FIELD valeur est \)

ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut gĂ©nĂ©rer une erreur d’analyse si le nombre de colonnes dĂ©limitĂ©es (c’est-Ă -dire de champs) dans un fichier d’entrĂ©e ne correspond pas au nombre de colonnes de la table correspondante.

Si ce paramĂštre est rĂ©glĂ© sur FALSE, aucune erreur n’est gĂ©nĂ©rĂ©e et le chargement continue. Si le fichier est chargĂ© correctement :

  • Si le fichier d’entrĂ©e contient des enregistrements contenant plus de champs que de colonnes dans la table, les champs correspondants sont chargĂ©s par ordre d’occurrence dans le fichier et les autres champs ne sont pas chargĂ©s.

  • Si le fichier d’entrĂ©e contient des enregistrements avec moins de champs que de colonnes dans la table, les colonnes qui ne correspondent pas dans la table sont chargĂ©es avec des valeurs NULL.

Cette option suppose que tous les enregistrements du fichier d’entrĂ©e ont la mĂȘme longueur (c’est-Ă -dire qu’un fichier contenant des enregistrements de longueur variable renvoie une erreur quelle que soit la valeur spĂ©cifiĂ©e pour ce paramĂštre).

Par défaut:

TRUE

Note

Lors de la transformation des donnĂ©es pendant le chargement (c’est-Ă -dire, en utilisant une requĂȘte comme source pour la commande COPY), cette option est ignorĂ©e. Il n’est pas nĂ©cessaire que vos fichiers de donnĂ©es aient le mĂȘme nombre et le mĂȘme ordre de colonnes que votre table cible.

REPLACE_INVALID_CHARACTERS = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut remplacer les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode (ïżœ).

S’il est dĂ©fini sur TRUE, Snowflake remplace les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode.

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

EMPTY_FIELD_AS_NULL = TRUE | FALSE
Utilisation:

Chargement de données, déchargement de données et tables externes

Définition:
  • Lors du chargement des donnĂ©es, spĂ©cifie s’il faut insĂ©rer SQL NULL pour les champs vides d’un fichier d’entrĂ©e, qui sont reprĂ©sentĂ©s par deux dĂ©limiteurs successifs (par exemple, ,,).

    Si l’option est dĂ©finie sur FALSE, Snowflake essaie de placer un champ vide dans le type de colonne correspondant. Une chaĂźne vide est insĂ©rĂ©e dans les colonnes de type STRING. Pour les autres types de colonne, la commande COPY produit une erreur.

  • Lors du dĂ©chargement des donnĂ©es, cette option est utilisĂ©e en combinaison avec FIELD_OPTIONALLY_ENCLOSED_BY. Lorsque FIELD_OPTIONALLY_ENCLOSED_BY = NONE, le paramĂštre EMPTY_FIELD_AS_NULL = FALSE spĂ©cifie de dĂ©charger les chaĂźnes vides dans les tables pour vider les valeurs de chaĂźne sans guillemets entourant les valeurs de champ.

    S’il est dĂ©fini sur TRUE, FIELD_OPTIONALLY_ENCLOSED_BY doit spĂ©cifier un caractĂšre pour entourer les chaĂźnes.

Par défaut:

TRUE

SKIP_BYTE_ORDER_MARK = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut ignorer le BOM (marque d’ordre d’octet), s’il est prĂ©sent dans un fichier de donnĂ©es. Une marque BOM est un code de caractĂšre placĂ© au dĂ©but d’un fichier de donnĂ©es qui dĂ©finit l’ordre des octets et la forme de l’encodage.

S’il est rĂ©glĂ© sur FALSE, Snowflake reconnaĂźt n’importe quel BOM dans les fichiers de donnĂ©es, ce qui pourrait entraĂźner une erreur BOM ou une fusion dans la premiĂšre colonne du tableau.

Par défaut:

TRUE

ENCODING = 'string'
Utilisation:

Chargement de données et tables externes

Définition:

Chaßne (constante) qui spécifie le jeu de caractÚres des données sources lors du chargement des données dans une table.

Jeu de caractĂšres

Valeur ENCODING 

Langues acceptées

Remarques

Big5

BIG5

Chinois traditionnel

EUC-JP

EUCJP

Japonais

EUC-KR

EUCKR

Coréen

GB18030

GB18030

Chinois

IBM420

IBM420

Arabe

IBM424

IBM424

Hébreu

IBM949

IBM949

Coréen

ISO-2022-CN

ISO2022CN

Chinois simplifié

ISO-2022-JP

ISO2022JP

Japonais

ISO-2022-KR

ISO2022KR

Coréen

ISO-8859-1

ISO88591

Allemand, anglais, danois, français, italien, norvégien, néerlandais, portugais, suédois

ISO-8859-2

ISO88592

TchĂšque, hongrois, polonais, roumain

ISO-8859-5

ISO88595

Russe

ISO-8859-6

ISO88596

Arabe

ISO-8859-7

ISO88597

Grec

ISO-8859-8

ISO88598

Hébreu

ISO-8859-9

ISO88599

Turc

ISO-8859-15

ISO885915

Allemand, anglais, danois, français, italien, norvégien, néerlandais, portugais, suédois

Identique Ă  ISO-8859-1 Ă  l’exception des 8 caractĂšres, y compris le symbole monĂ©taire Euro.

KOI8-R

KOI8R

Russe

Shift_JIS

SHIFTJIS

Japonais

UTF-8

UTF8

Toutes les langues

Pour charger des données à partir de fichiers délimités (CSV, TSV, etc.), UTF-8 est la valeur par défaut. . . Pour charger des données à partir de tous les autres formats de fichier pris en charge (JSON, Avro, etc.), ainsi que pour décharger des données, UTF-8 est le seul jeu de caractÚres pris en charge.

UTF-16

UTF16

Toutes les langues

UTF-16BE

UTF16BE

Toutes les langues

UTF-16LE

UTF16LE

Toutes les langues

UTF-32

UTF32

Toutes les langues

UTF-32BE

UTF32BE

Toutes les langues

UTF-32LE

UTF32LE

Toutes les langues

fenĂȘtres-874

WINDOWS874

ThaĂŻlandais

windows-949

WINDOWS949

Coréen

windows-1250

WINDOWS1250

TchĂšque, hongrois, polonais, roumain

windows-1251

WINDOWS1251

Russe

windows-1252

WINDOWS1252

Allemand, anglais, danois, français, italien, norvégien, néerlandais, portugais, suédois

windows-1253

WINDOWS1253

Grec

windows-1254

WINDOWS1254

Turc

windows-1255

WINDOWS1255

Hébreu

windows-1256

WINDOWS1256

Arabe

Par défaut:

UTF8

Note

Snowflake stocke toutes les donnĂ©es en interne dans le jeu de caractĂšres UTF-8. Les donnĂ©es sont converties en UTF-8 avant d’ĂȘtre chargĂ©es dans Snowflake.

TYPE = JSON¶

COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
Utilisation:

Chargement de données et tables externes

Définition:
  • Lors du chargement des donnĂ©es, spĂ©cifie l’algorithme de compression actuel pour le fichier de donnĂ©es. Snowflake utilise cette option pour dĂ©tecter comment un fichier de donnĂ©es dĂ©jĂ  compressĂ© a Ă©tĂ© compressĂ© afin que les donnĂ©es compressĂ©es dans le fichier puissent ĂȘtre extraites pour le chargement.

  • Lors du dĂ©chargement des donnĂ©es, compresse le fichier de donnĂ©es en utilisant l’algorithme de compression spĂ©cifiĂ©.

Valeurs:

Valeurs prises en charge

Remarques

AUTO

Lors du chargement des donnĂ©es, l’algorithme de compression est dĂ©tectĂ© automatiquement, sauf pour les fichiers compressĂ©s par Brotli, qui ne peuvent actuellement pas ĂȘtre dĂ©tectĂ©s automatiquement. Lors du dĂ©chargement des donnĂ©es, les fichiers sont automatiquement compressĂ©s en utilisant la valeur par dĂ©faut, qui est gzip.

GZIP

BZ2

BROTLI

Doit ĂȘtre spĂ©cifiĂ© lors du chargement/dĂ©chargement de fichiers compressĂ©s Brotli.

ZSTD

Zstandard v0.8 (et supérieur) est pris en charge.

DEFLATE

Fichiers compressĂ©s Deflate (avec en-tĂȘte zlib, RFC1950).

RAW_DEFLATE

Fichiers bruts compressĂ©s Deflate (sans en-tĂȘte, RFC1951).

NONE

Lors du chargement des donnĂ©es, indique que les fichiers n’ont pas Ă©tĂ© compressĂ©s. Lors du dĂ©chargement des donnĂ©es, spĂ©cifie que les fichiers dĂ©chargĂ©s ne sont pas compressĂ©s.

Par défaut:

AUTO

DATE_FORMAT = 'string' | AUTO
Utilisation:

Chargement des données uniquement

Définition:

DĂ©finit le format des valeurs de chaĂźne de date dans les fichiers de donnĂ©es. Si une valeur n’est pas spĂ©cifiĂ©e ou est AUTO, la valeur du paramĂštre DATE_INPUT_FORMAT est utilisĂ©e.

Cette option de format de fichier s’applique uniquement aux actions suivantes :

  • Chargement des donnĂ©es JSON dans des colonnes sĂ©parĂ©es en utilisant l’option de copie MATCH_BY_COLUMN_NAME.

  • Chargement des donnĂ©es JSON dans des colonnes distinctes en spĂ©cifiant une requĂȘte dans l’instruction COPY (c’est-Ă -dire une transformation COPY).

Par défaut:

AUTO

TIME_FORMAT = 'string' | AUTO
Utilisation:

Chargement des données uniquement

Définition:

DĂ©finit le format des valeurs de la chaĂźne de temps dans les fichiers de donnĂ©es. Si une valeur n’est pas spĂ©cifiĂ©e ou est AUTO, la valeur du paramĂštre TIME_INPUT_FORMAT est utilisĂ©e.

Cette option de format de fichier s’applique uniquement aux actions suivantes :

  • Chargement des donnĂ©es JSON dans des colonnes sĂ©parĂ©es en utilisant l’option de copie MATCH_BY_COLUMN_NAME.

  • Chargement des donnĂ©es JSON dans des colonnes distinctes en spĂ©cifiant une requĂȘte dans l’instruction COPY (c’est-Ă -dire une transformation COPY).

Par défaut:

AUTO

TIMESTAMP_FORMAT = string' | AUTO
Utilisation:

Chargement des données uniquement

Définition:

DĂ©finit le format des valeurs de chaĂźne d’horodatage dans les fichiers de donnĂ©es. Si une valeur n’est pas spĂ©cifiĂ©e ou est AUTO, la valeur du paramĂštre TIMESTAMP_INPUT_FORMAT est utilisĂ©e.

Cette option de format de fichier s’applique uniquement aux actions suivantes :

  • Chargement des donnĂ©es JSON dans des colonnes sĂ©parĂ©es en utilisant l’option de copie MATCH_BY_COLUMN_NAME.

  • Chargement des donnĂ©es JSON dans des colonnes distinctes en spĂ©cifiant une requĂȘte dans l’instruction COPY (c’est-Ă -dire une transformation COPY).

Par défaut:

AUTO

BINARY_FORMAT = HEX | BASE64 | UTF8
Utilisation:

Chargement des données uniquement

Définition:

DĂ©finit le format d’encodage des valeurs de chaĂźnes binaires dans les fichiers de donnĂ©es. L’option peut ĂȘtre utilisĂ©e pour charger des donnĂ©es Ă  partir de colonnes binaires dans une table.

Cette option de format de fichier s’applique uniquement aux actions suivantes :

  • Chargement des donnĂ©es JSON dans des colonnes sĂ©parĂ©es en utilisant l’option de copie MATCH_BY_COLUMN_NAME.

  • Chargement des donnĂ©es JSON dans des colonnes distinctes en spĂ©cifiant une requĂȘte dans l’instruction COPY (c’est-Ă -dire une transformation COPY).

Par défaut:

HEX

TRIM_SPACE = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut supprimer les espaces blancs de dĂ©but et de fin des chaĂźnes.

Par exemple, si votre logiciel de base de donnĂ©es externe contient des champs entre guillemets, mais insĂšre un espace d’en-tĂȘte, Snowflake lit l’espace d’en-tĂȘte plutĂŽt que le caractĂšre guillemet comme dĂ©but du champ (c’est-Ă -dire que les guillemets sont interprĂ©tĂ©s comme faisant partie de la chaĂźne des donnĂ©es du champ). DĂ©finissez cette option sur TRUE pour supprimer les espaces indĂ©sirables pendant le chargement des donnĂ©es.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement de donnĂ©es JSON dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Par défaut:

FALSE

MULTI_LINE = TRUE | FALSE

Utiliser : Chargement de donnĂ©es et tables externes

Définition:

BoolĂ©en qui spĂ©cifie si les lignes multiples sont autorisĂ©es. Si MULTI_LINE est dĂ©fini sur FALSE et qu’une nouvelle ligne est prĂ©sente dans un enregistrement JSON, l’enregistrement contenant la nouvelle ligne sera interprĂ©tĂ© comme une erreur.

Par défaut:

TRUE

NULL_IF = ( 'string1' [ , 'string2' , ... ] )
Utilisation:

Chargement des données uniquement

Définition:

ChaĂźne utilisĂ©e pour les conversions entrante et sortante de SQL NULL. Snowflake remplace ces chaĂźnes de la source de chargement des donnĂ©es par SQL NULL. Pour spĂ©cifier plus d’une chaĂźne, mettez la liste des chaĂźnes entre parenthĂšses et utilisez des virgules pour sĂ©parer chaque valeur.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement de donnĂ©es JSON dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Notez que Snowflake convertit toutes les instances de la valeur en NULL, quel que soit le type de données. Par exemple, si 2 est spécifié comme valeur, toutes les instances de 2 sous forme de chaßne ou de nombre sont converties.

Par exemple :

NULL_IF = ('\N', 'NULL', 'NUL', '')

Notez que cette option peut inclure des chaĂźnes vides.

Par défaut:

\N (c’est-à-dire NULL)

FILE_EXTENSION = 'string' | NONE
Utilisation:

Déchargement des données uniquement

Définition:

SpĂ©cifie l’extension des fichiers dĂ©chargĂ©s dans une zone de prĂ©paration. Accepte toute extension. L’utilisateur est chargĂ© de spĂ©cifier une extension de fichier qui peut ĂȘtre lue par tout logiciel ou service dĂ©sirĂ©.

Par défaut:

null, ce qui signifie que l’extension du fichier est dĂ©terminĂ©e par le type de format : .json[compression], oĂč compression est l’extension ajoutĂ©e par la mĂ©thode de compression, si COMPRESSION est dĂ©fini.

ENABLE_OCTAL = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui permet d’analyser les nombres octaux.

Par défaut:

FALSE

ALLOW_DUPLICATE = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui indique d’autoriser les noms de champs d’objets dupliquĂ©s (seul le dernier sera conservĂ©).

Par défaut:

FALSE

STRIP_OUTER_ARRAY = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui demande Ă  l’analyseur JSON de supprimer les crochets extĂ©rieurs (comme [ ]).

Par défaut:

FALSE

STRIP_NULL_VALUES = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui demande Ă  l’analyseur JSON de supprimer les champs d’objets ou les Ă©lĂ©ments de tableau contenant des valeurs null. Par exemple, lorsque dĂ©fini sur TRUE :

Avant

AprĂšs

[null]

[]

[null,null,3]

[,,3]

{"a":null,"b":null,"c":123}

{"c":123}

{"a":[1,null,2],"b":{"x":null,"y":88}}

{"a":[1,,2],"b":{"y":88}}

Par défaut:

FALSE

REPLACE_INVALID_CHARACTERS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie s’il faut remplacer les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode (ïżœ). Cette option permet de remplacer un caractĂšre par un autre.

Valeurs:

S’il est dĂ©fini sur TRUE, Snowflake remplace les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode.

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

IGNORE_UTF8_ERRORS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie si les erreurs d’encodage UTF-8 produisent des conditions d’erreur. Il s’agit d’une syntaxe alternative pour REPLACE_INVALID_CHARACTERS.

Valeurs:

Si ce paramĂštre est rĂ©glĂ© sur TRUE, toute sĂ©quence UTF-8 non valide est remplacĂ©e discrĂštement par le caractĂšre Unicode U+FFFD (c.-Ă -d. un « caractĂšre de remplacement Â»).

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

SKIP_BYTE_ORDER_MARK = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut ignorer le BOM (marque d’ordre d’octet), s’il est prĂ©sent dans un fichier de donnĂ©es. Une marque BOM est un code de caractĂšre placĂ© au dĂ©but d’un fichier de donnĂ©es qui dĂ©finit l’ordre des octets et la forme de l’encodage.

S’il est rĂ©glĂ© sur FALSE, Snowflake reconnaĂźt n’importe quel BOM dans les fichiers de donnĂ©es, ce qui pourrait entraĂźner une erreur BOM ou une fusion dans la premiĂšre colonne du tableau.

Par défaut:

TRUE

TYPE = AVRO¶

COMPRESSION = AUTO | GZIP | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
Utilisation:

Chargement des données uniquement

Définition:
  • Lors du chargement des donnĂ©es, spĂ©cifie l’algorithme de compression actuel pour le fichier de donnĂ©es. Snowflake utilise cette option pour dĂ©tecter comment un fichier de donnĂ©es dĂ©jĂ  compressĂ© a Ă©tĂ© compressĂ© afin que les donnĂ©es compressĂ©es dans le fichier puissent ĂȘtre extraites pour le chargement.

  • Lors du dĂ©chargement des donnĂ©es, compresse le fichier de donnĂ©es en utilisant l’algorithme de compression spĂ©cifiĂ©.

Valeurs:

Valeurs prises en charge

Remarques

AUTO

Lors du chargement des donnĂ©es, l’algorithme de compression est dĂ©tectĂ© automatiquement, sauf pour les fichiers compressĂ©s par Brotli, qui ne peuvent actuellement pas ĂȘtre dĂ©tectĂ©s automatiquement. Lors du dĂ©chargement des donnĂ©es, les fichiers sont automatiquement compressĂ©s en utilisant la valeur par dĂ©faut, qui est gzip.

GZIP

BROTLI

Doit ĂȘtre spĂ©cifiĂ© lors du chargement/dĂ©chargement de fichiers compressĂ©s Brotli.

ZSTD

Zstandard v0.8 (et supérieur) est pris en charge.

DEFLATE

Fichiers compressĂ©s Deflate (avec en-tĂȘte zlib, RFC1950).

RAW_DEFLATE

Fichiers bruts compressĂ©s Deflate (sans en-tĂȘte, RFC1951).

NONE

Lors du chargement des donnĂ©es, indique que les fichiers n’ont pas Ă©tĂ© compressĂ©s. Lors du dĂ©chargement des donnĂ©es, spĂ©cifie que les fichiers dĂ©chargĂ©s ne sont pas compressĂ©s.

Par défaut:

AUTO.

Note

Nous vous recommandons d’utiliser l’option par dĂ©faut AUTO car elle dĂ©terminera Ă  la fois la compression du fichier et celle du codec. La spĂ©cification d’une option de compression fait rĂ©fĂ©rence Ă  la compression de fichiers, et non Ă  la compression de blocs (codecs).

TRIM_SPACE = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut supprimer les espaces blancs de dĂ©but et de fin des chaĂźnes.

Par exemple, si votre logiciel de base de donnĂ©es externe contient des champs entre guillemets, mais insĂšre un espace d’en-tĂȘte, Snowflake lit l’espace d’en-tĂȘte plutĂŽt que le caractĂšre guillemet comme dĂ©but du champ (c’est-Ă -dire que les guillemets sont interprĂ©tĂ©s comme faisant partie de la chaĂźne des donnĂ©es du champ). DĂ©finissez cette option sur TRUE pour supprimer les espaces indĂ©sirables pendant le chargement des donnĂ©es.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement de donnĂ©es Avro dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Par défaut:

FALSE

REPLACE_INVALID_CHARACTERS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie s’il faut remplacer les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode (ïżœ). Cette option permet de remplacer un caractĂšre par un autre.

Valeurs:

S’il est dĂ©fini sur TRUE, Snowflake remplace les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode.

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

NULL_IF = ( 'string1' [ , 'string2' , ... ] )
Utilisation:

Chargement des données uniquement

Définition:

ChaĂźne utilisĂ©e pour les conversions entrante et sortante de SQL NULL. Snowflake remplace ces chaĂźnes de la source de chargement des donnĂ©es par SQL NULL. Pour spĂ©cifier plus d’une chaĂźne, mettez la liste des chaĂźnes entre parenthĂšses et utilisez des virgules pour sĂ©parer chaque valeur.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement de donnĂ©es Avro dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Notez que Snowflake convertit toutes les instances de la valeur en NULL, quel que soit le type de données. Par exemple, si 2 est spécifié comme valeur, toutes les instances de 2 sous forme de chaßne ou de nombre sont converties.

Par exemple :

NULL_IF = ('\N', 'NULL', 'NUL', '')

Notez que cette option peut inclure des chaĂźnes vides.

Par défaut:

\N (c’est-à-dire NULL)

TYPE = ORC¶

TRIM_SPACE = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui spĂ©cifie s’il faut supprimer les espaces blancs de dĂ©but et de fin des chaĂźnes.

Par exemple, si votre logiciel de base de donnĂ©es externe contient des champs entre guillemets, mais insĂšre un espace d’en-tĂȘte, Snowflake lit l’espace d’en-tĂȘte plutĂŽt que le caractĂšre guillemet comme dĂ©but du champ (c’est-Ă -dire que les guillemets sont interprĂ©tĂ©s comme faisant partie de la chaĂźne des donnĂ©es du champ). DĂ©finissez cette option sur TRUE pour supprimer les espaces indĂ©sirables pendant le chargement des donnĂ©es.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement des donnĂ©es Orc dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Par défaut:

FALSE

REPLACE_INVALID_CHARACTERS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie s’il faut remplacer les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode (ïżœ). Cette option permet de remplacer un caractĂšre par un autre.

Valeurs:

S’il est dĂ©fini sur TRUE, Snowflake remplace les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode.

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

NULL_IF = ( 'string1' [ , 'string2' , ... ] )
Utilisation:

Chargement de données et tables externes

Définition:

ChaĂźne utilisĂ©e pour les conversions entrante et sortante de SQL NULL. Snowflake remplace ces chaĂźnes de la source de chargement des donnĂ©es par SQL NULL. Pour spĂ©cifier plus d’une chaĂźne, mettez la liste des chaĂźnes entre parenthĂšses et utilisez des virgules pour sĂ©parer chaque valeur.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement des donnĂ©es Orc dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Notez que Snowflake convertit toutes les instances de la valeur en NULL, quel que soit le type de données. Par exemple, si 2 est spécifié comme valeur, toutes les instances de 2 sous forme de chaßne ou de nombre sont converties.

Par exemple :

NULL_IF = ('\N', 'NULL', 'NUL', '')

Notez que cette option peut inclure des chaĂźnes vides.

Par défaut:

\N (c’est-à-dire NULL)

TYPE = PARQUET¶

COMPRESSION = AUTO | LZO | SNAPPY | NONE
Utilisation:

Déchargement des données et tables externes

Définition:

  • Lors du dĂ©chargement des donnĂ©es, spĂ©cifie l’algorithme de compression des colonnes dans les fichiers Parquet.

Valeurs:

Valeurs prises en charge

Remarques

AUTO

Lors du chargement des donnĂ©es, l’algorithme de compression est dĂ©tectĂ© automatiquement. Prend en charge les algorithmes de compression suivants : Brotli, gzip, Lempel–Ziv–Oberhumer (LZO), LZ4, Snappy ou Zstandard v0.8 (et versions ultĂ©rieures). . Lors du dĂ©chargement des donnĂ©es, les fichiers dĂ©chargĂ©s sont compressĂ©s en utilisant l’algorithme de compression Snappy par dĂ©faut.

LZO

Lors du dĂ©chargement des donnĂ©es, les fichiers sont compressĂ©s Ă  l’aide de l’algorithme Snappy par dĂ©faut. Si vous dĂ©chargez des donnĂ©es dans des fichiers LZO compressĂ©s, spĂ©cifiez cette valeur.

SNAPPY

Lors du dĂ©chargement des donnĂ©es, les fichiers sont compressĂ©s Ă  l’aide de l’algorithme Snappy par dĂ©faut. Vous pouvez spĂ©cifier cette valeur en option.

NONE

Lors du chargement des donnĂ©es, indique que les fichiers n’ont pas Ă©tĂ© compressĂ©s. Lors du dĂ©chargement des donnĂ©es, spĂ©cifie que les fichiers dĂ©chargĂ©s ne sont pas compressĂ©s.

Par défaut:

AUTO

SNAPPY_COMPRESSION = TRUE | FALSE
Utilisation:

Déchargement des données uniquement

Valeurs prises en charge

Remarques

AUTO

Les fichiers dĂ©chargĂ©s sont compressĂ©s Ă  l’aide de l’algorithme de compression Snappy par dĂ©faut.

SNAPPY

Peut ĂȘtre spĂ©cifiĂ© si vous dĂ©chargez des fichiers compressĂ©s avec Snappy.

NONE

Lors du chargement des donnĂ©es, indique que les fichiers n’ont pas Ă©tĂ© compressĂ©s. Lors du dĂ©chargement des donnĂ©es, spĂ©cifie que les fichiers dĂ©chargĂ©s ne sont pas compressĂ©s.

Définition:

BoolĂ©en qui spĂ©cifie si les fichiers dĂ©chargĂ©s sont compressĂ©s en utilisant l’algorithme SNAPPY.

Note

ObsolĂšte. Utilisez plutĂŽt COMPRESSION = SNAPPY.

Limitations:

Uniquement pris en charge pour les opérations de déchargement de données.

Par défaut:

TRUE

BINARY_AS_TEXT = TRUE | FALSE
Utilisation:

Chargement de données et tables externes

Définition:

BoolĂ©en qui spĂ©cifie s’il faut interprĂ©ter les colonnes sans type de donnĂ©es logiques dĂ©fini comme du texte UTF-8. Lorsqu’il est rĂ©glĂ© sur FALSE, Snowflake interprĂšte ces colonnes comme des donnĂ©es binaires.

Par défaut:

TRUE

Note

Snowflake vous recommande de définir BINARY_AS_TEXT sur FALSE pour éviter tout problÚme de conversion éventuel.

TRIM_SPACE = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut supprimer les espaces blancs de dĂ©but et de fin des chaĂźnes.

Par exemple, si votre logiciel de base de donnĂ©es externe contient des champs entre guillemets, mais insĂšre un espace d’en-tĂȘte, Snowflake lit l’espace d’en-tĂȘte plutĂŽt que le caractĂšre guillemet comme dĂ©but du champ (c’est-Ă -dire que les guillemets sont interprĂ©tĂ©s comme faisant partie de la chaĂźne des donnĂ©es du champ). DĂ©finissez cette option sur TRUE pour supprimer les espaces indĂ©sirables pendant le chargement des donnĂ©es.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement de donnĂ©es Parquet dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Par défaut:

FALSE

USE_LOGICAL_TYPE = TRUE | FALSE
Utilisation:

Chargement de données, interrogation de données dans des fichiers en zone de préparation et détection de schémas.

Définition:

BoolĂ©en qui spĂ©cifie s’il faut utiliser les types logiques Parquet. Avec cette option de format de fichier, Snowflake peut interprĂ©ter les types logiques Parquet lors du chargement des donnĂ©es. Pour plus d’informations, consultez DĂ©finitions de types logiques Parquet. Pour activer les types logiques Parquet, dĂ©finissez USE_LOGICAL_TYPE sur TRUE lorsque vous crĂ©ez une nouvelle option de format de fichier.

Limitations:

Non pris en charge pour le déchargement de données.

USE_VECTORIZED_SCANNER = TRUE | FALSE
Utilisation:

Chargement de données et interrogation de données dans des fichiers en zone de préparation

Définition:

BoolĂ©en qui spĂ©cifie s’il faut utiliser un scanner vectorisĂ© pour charger les fichiers Parquet.

Par défaut:

FALSE. Dans un futur BCR, la valeur par défaut sera TRUE.

L’utilisation du scanner vectorisĂ© peut considĂ©rablement rĂ©duire la latence pour le chargement de fichiers Parquet, car ce scanner est bien adaptĂ© au format de colonne d’un fichier Parquet. Le scanner ne tĂ©lĂ©charge en mĂ©moire que les sections pertinentes du fichier Parquet, telles que le sous-ensemble de colonnes sĂ©lectionnĂ©es.

Si USE_VECTORIZED_SCANNER est dĂ©fini sur TRUE, le scanner vectorisĂ© se comporte comme suit :

  • L’option BINARY_AS_TEXT est toujours traitĂ©e comme FALSE et l’option USE_LOGICAL_TYPE est toujours traitĂ©e comme TRUE, quelle que soit la valeur rĂ©elle.

  • Le scanner vectorisĂ© prend en charge les types de carte Parquet. La sortie de l’analyse d’un type de carte est la suivante :

    "my_map":
      {
       "k1": "v1",
       "k2": "v2"
      }
    
    Copy
  • Le scanner vectorisĂ© affiche les valeurs NULL dans la sortie, comme le montre l’exemple suivant :

    "person":
     {
      "name": "Adam",
      "nickname": null,
      "age": 34,
      "phone_numbers":
      [
        "1234567890",
        "0987654321",
        null,
        "6781234590"
      ]
      }
    
    Copy
  • Le scanner vectorisĂ© traite l’heure et l’horodatage comme suit :

    Parquet

    Scanner vectorisé Snowflake

    TimeType(isAdjustedToUtc=Vrai/Faux, unité=MILLIS/MICROS/NANOS)

    TIME

    TimestampType(isAdjustedToUtc=Vrai, unité=MILLIS/MICROS/NANOS)

    TIMESTAMP_LTZ

    TimestampType(isAdjustedToUtc=Faux, unité=MILLIS/MICROS/NANOS)

    TIMESTAMP_NTZ

    INT96

    TIMESTAMP_LTZ

Si USE_VECTORIZED_SCANNER est rĂ©glĂ© sur FALSE, le scanner se comporte comme suit :

  • Cette option ne prend pas en charge les cartes Parquet. La sortie de l’analyse d’un type de carte est la suivante :

    "my_map":
     {
      "key_value":
      [
       {
              "key": "k1",
              "value": "v1"
          },
          {
              "key": "k2",
              "value": "v2"
          }
        ]
      }
    
    Copy
  • Cette option n’affiche pas explicitement les valeurs NULL dans la sortie de l’analyse, comme le montre l’exemple suivant :

    "person":
     {
      "name": "Adam",
      "age": 34
      "phone_numbers":
      [
       "1234567890",
       "0987654321",
       "6781234590"
      ]
     }
    
    Copy
  • Cette option traite l’heure et l’horodatage comme suit :

    Parquet

    Lorsque USE_LOGICAL_TYPE = TRUE

    Lorsque USE_LOGICAL_TYPE = FALSE

    TimeType(isAdjustedToUtc=Vrai/Faux, unité=MILLIS/MICROS)

    TIME

    • TIME (Si ConvertedType est prĂ©sent)

    • INTEGER (Si ConvertedType n’est pas prĂ©sent)

    TimeType(isAdjustedToUtc=Vrai/Faux, unité=NANOS)

    TIME

    INTEGER

    TimestampType(isAdjustedToUtc=Vrai, unité=MILLIS/MICROS)

    TIMESTAMP_LTZ

    TIMESTAMP_NTZ

    TimestampType(isAdjustedToUtc=Vrai, unité=NANOS)

    TIMESTAMP_LTZ

    INTEGER

    TimestampType(isAdjustedToUtc=Faux, unité=MILLIS/MICROS)

    TIMESTAMP_NTZ

    • TIMESTAMP_LTZ (Si ConvertedType est prĂ©sent)

    • INTEGER (Si ConvertedType n’est pas prĂ©sent)

    TimestampType(isAdjustedToUtc=Faux, unité=NANOS)

    TIMESTAMP_NTZ

    INTEGER

    INT96

    TIMESTAMP_NTZ

    TIMESTAMP_NTZ

REPLACE_INVALID_CHARACTERS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie s’il faut remplacer les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode (ïżœ). Cette option permet de remplacer un caractĂšre par un autre.

Valeurs:

S’il est dĂ©fini sur TRUE, Snowflake remplace les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode.

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

NULL_IF = ( 'string1' [ , 'string2' , ... ] )
Utilisation:

Chargement des données uniquement

Définition:

ChaĂźne utilisĂ©e pour les conversions entrante et sortante de SQL NULL. Snowflake remplace ces chaĂźnes de la source de chargement des donnĂ©es par SQL NULL. Pour spĂ©cifier plus d’une chaĂźne, mettez la liste des chaĂźnes entre parenthĂšses et utilisez des virgules pour sĂ©parer chaque valeur.

Cette option de format de fichier est appliquĂ©e aux actions suivantes uniquement lors du chargement de donnĂ©es Parquet dans des colonnes sĂ©parĂ©es Ă  l’aide de l’option de copie MATCH_BY_COLUMN_NAME.

Notez que Snowflake convertit toutes les instances de la valeur en NULL, quel que soit le type de données. Par exemple, si 2 est spécifié comme valeur, toutes les instances de 2 sous forme de chaßne ou de nombre sont converties.

Par exemple :

NULL_IF = ('\N', 'NULL', 'NUL', '')

Notez que cette option peut inclure des chaĂźnes vides.

Par défaut:

\N (c’est-à-dire NULL)

TYPE = XML¶

COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE
Utilisation:

Chargement des données uniquement

Définition:
  • Lors du chargement des donnĂ©es, spĂ©cifie l’algorithme de compression actuel pour le fichier de donnĂ©es. Snowflake utilise cette option pour dĂ©tecter comment un fichier de donnĂ©es dĂ©jĂ  compressĂ© a Ă©tĂ© compressĂ© afin que les donnĂ©es compressĂ©es dans le fichier puissent ĂȘtre extraites pour le chargement.

  • Lors du dĂ©chargement des donnĂ©es, compresse le fichier de donnĂ©es en utilisant l’algorithme de compression spĂ©cifiĂ©.

Valeurs:

Valeurs prises en charge

Remarques

AUTO

Lors du chargement des donnĂ©es, l’algorithme de compression est dĂ©tectĂ© automatiquement, sauf pour les fichiers compressĂ©s par Brotli, qui ne peuvent actuellement pas ĂȘtre dĂ©tectĂ©s automatiquement. Lors du dĂ©chargement des donnĂ©es, les fichiers sont automatiquement compressĂ©s en utilisant la valeur par dĂ©faut, qui est gzip.

GZIP

BZ2

BROTLI

Doit ĂȘtre spĂ©cifiĂ© lors du chargement/dĂ©chargement de fichiers compressĂ©s Brotli.

ZSTD

Zstandard v0.8 (et supérieur) est pris en charge.

DEFLATE

Fichiers compressĂ©s Deflate (avec en-tĂȘte zlib, RFC1950).

RAW_DEFLATE

Fichiers bruts compressĂ©s Deflate (sans en-tĂȘte, RFC1951).

NONE

Lors du chargement des donnĂ©es, indique que les fichiers n’ont pas Ă©tĂ© compressĂ©s. Lors du dĂ©chargement des donnĂ©es, spĂ©cifie que les fichiers dĂ©chargĂ©s ne sont pas compressĂ©s.

Par défaut:

AUTO

IGNORE_UTF8_ERRORS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie si les erreurs d’encodage UTF-8 produisent des conditions d’erreur. Il s’agit d’une syntaxe alternative pour REPLACE_INVALID_CHARACTERS.

Valeurs:

Si ce paramĂštre est rĂ©glĂ© sur TRUE, toute sĂ©quence UTF-8 non valide est remplacĂ©e discrĂštement par le caractĂšre Unicode U+FFFD (c.-Ă -d. un « caractĂšre de remplacement Â»).

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

PRESERVE_SPACE = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie si l’analyseur XML prĂ©serve les espaces d’en-tĂȘte et de fin dans le contenu des Ă©lĂ©ments.

Par défaut:

FALSE

STRIP_OUTER_ELEMENT = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie si l’analyseur XML supprime l’élĂ©ment externe XML, exposant les Ă©lĂ©ments de 2e niveau comme des documents sĂ©parĂ©s.

Par défaut:

FALSE

DISABLE_AUTO_CONVERT = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie si l’analyseur XML dĂ©sactive la conversion automatique des valeurs numĂ©riques et boolĂ©ennes du texte en reprĂ©sentation native.

Par défaut:

FALSE

REPLACE_INVALID_CHARACTERS = TRUE | FALSE
Utilisation:

Chargement de données et table externe

Définition:

BoolĂ©en qui spĂ©cifie s’il faut remplacer les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode (ïżœ). Cette option permet de remplacer un caractĂšre par un autre.

Valeurs:

S’il est dĂ©fini sur TRUE, Snowflake remplace les caractĂšres UTF-8 non valides par le caractĂšre de remplacement Unicode.

Si FALSE est dĂ©fini, l’opĂ©ration de chargement gĂ©nĂšre une erreur lorsqu’un codage de caractĂšres UTF-8 non valide est dĂ©tectĂ©.

Par défaut:

FALSE

SKIP_BYTE_ORDER_MARK = TRUE | FALSE
Utilisation:

Chargement des données uniquement

Définition:

BoolĂ©en qui spĂ©cifie s’il faut sauter n’importe quel BOM (marque d’ordre d’octet) prĂ©sent dans un fichier d’entrĂ©e. Une marque BOM est un code de caractĂšre placĂ© au dĂ©but d’un fichier de donnĂ©es qui dĂ©finit l’ordre des octets et la forme de l’encodage.

S’il est rĂ©glĂ© sur FALSE, Snowflake reconnaĂźt n’importe quel BOM dans les fichiers de donnĂ©es, ce qui pourrait entraĂźner une erreur BOM ou une fusion dans la premiĂšre colonne du tableau.

Par défaut:

TRUE

Exigences en matiĂšre de contrĂŽle d’accĂšs¶

Un rĂŽle utilisĂ© pour exĂ©cuter cette opĂ©ration doit au minimum disposer des privilĂšges suivants :

PrivilĂšge

Objet

Remarques

CREATE FILE FORMAT

Schéma

OWNERSHIP

Format de fichier

  • Un rĂŽle doit se voir accorder le privilĂšge OWNERSHIP ou en hĂ©riter sur l’objet pour crĂ©er un objet temporaire portant le mĂȘme nom que l’objet qui existe dĂ©jĂ  dans le schĂ©ma.

  • Obligatoire pour exĂ©cuter une instruction CREATE OR ALTER FILE FORMAT pour un format de fichier existant.

Note that in a managed access schema, only the schema owner (i.e. the role with the OWNERSHIP privilege on the schema) or a role with the MANAGE GRANTS privilege can grant or revoke privileges on objects in the schema, including future grants.

Le privilĂšge USAGE relatif Ă  la base de donnĂ©es et au schĂ©ma parents est exigĂ© pour effectuer des opĂ©rations sur tout objet d’un schĂ©ma.

Pour obtenir des instructions sur la crĂ©ation d’un rĂŽle personnalisĂ© avec un ensemble spĂ©cifique de privilĂšges, voir CrĂ©ation de rĂŽles personnalisĂ©s.

Pour des informations gĂ©nĂ©rales sur les rĂŽles et les privilĂšges accordĂ©s pour effectuer des actions SQL sur des objets sĂ©curisables, voir Aperçu du contrĂŽle d’accĂšs.

Notes sur l’utilisation de CREATE OR ALTER FILEFORMAT¶

  • Toutes les limitations de la commande ALTER FILE FORMAT s’appliquent.

  • Vous ne pouvez pas transformer une commande TEMP FILE FORMAT en une commande FILE FORMAT normale et inversement.

  • Vous ne pouvez pas modifier la propriĂ©tĂ© TYPE.

Notes sur l’utilisation¶

Prudence

RecrĂ©er un format de fichier (en utilisant CREATE OR REPLACE FILE FORMAT) rompt l’association entre le fichier de format et toute table externe qui y fait rĂ©fĂ©rence. Ceci est dĂ» au fait qu’une table externe se lie Ă  un format de prĂ©paration en utilisant un ID cachĂ© plutĂŽt que le nom du format de fichier. En coulisse, la syntaxe CREATE OR REPLACE dĂ©truit un objet et le recrĂ©e avec un ID cachĂ© diffĂ©rent.

Si vous devez recrĂ©er un format de fichier aprĂšs qu’il a Ă©tĂ© liĂ© Ă  une ou plusieurs tables externes, vous devez recrĂ©er chacune des tables externes (en utilisant CREATE OR REPLACE EXTERNAL TABLE) pour rĂ©tablir l’association. Appelez la fonction GET_DDL pour rĂ©cupĂ©rer une instruction DDL afin de recrĂ©er chacune des tables externes.

  • Les valeurs de format de fichier contradictoires dans une instruction SQL produisent une erreur. Un conflit se produit lorsque la mĂȘme option est spĂ©cifiĂ©e plusieurs fois avec des valeurs diffĂ©rentes (par exemple : ...TYPE = 'CSV' ... TYPE = 'JSON'...).

  • Concernant les mĂ©tadonnĂ©es :

    Attention

    Les clients doivent s’assurer qu’aucune donnĂ©e personnelle (autre que pour un objet utilisateur), donnĂ©e sensible, donnĂ©e Ă  exportation contrĂŽlĂ©e ou autre donnĂ©e rĂ©glementĂ©e n’est saisie comme mĂ©tadonnĂ©e lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de mĂ©tadonnĂ©es dans Snowflake.

  • Les clauses OR REPLACE et IF NOT EXISTS s’excluent mutuellement. Elles ne peuvent pas ĂȘtre utilisĂ©es dans la mĂȘme instruction.

  • Les instructions CREATE OR REPLACE <objet> sont atomiques. En d’autres termes, lorsqu’un objet est remplacĂ©, l’ancien objet est supprimĂ© et le nouvel objet est créé dans une seule transaction.

Exemples¶

CrĂ©ez un format de fichier CSV nommĂ© my_csv_format qui utilise toutes les options de format CSV par dĂ©faut :

CREATE OR REPLACE FILE FORMAT my_csv_format
  TYPE = CSV
  COMMENT = 'my_file_format';
Copy

Modifiez my_csv_format pour qu’il dĂ©finisse les rĂšgles suivantes pour les fichiers de donnĂ©es et supprime le commentaire :

  • Les champs sont dĂ©limitĂ©s Ă  l’aide du caractĂšre de barre verticale (|).

  • Les fichiers comprennent une seule ligne d’en-tĂȘte qui sera ignorĂ©e.

  • Les chaĂźnes NULL et null seront remplacĂ©es par des valeurs NULL.

  • Les chaĂźnes vides seront interprĂ©tĂ©es comme des valeurs NULL.

  • Les fichiers seront compressĂ©s / dĂ©compressĂ©s Ă  l’aide de la compression GZIP.

CREATE OR ALTER FILE FORMAT my_csv_format
  TYPE = CSV
  FIELD_DELIMITER = '|'
  SKIP_HEADER = 1
  NULL_IF = ('NULL', 'null')
  EMPTY_FIELD_AS_NULL = true
  COMPRESSION = gzip;
Copy

CrĂ©ez un format de fichier JSON nommĂ© my_json_format qui utilise toutes les options de format JSON par dĂ©faut :

CREATE OR REPLACE FILE FORMAT my_json_format
  TYPE = JSON;
Copy

Créez un format de fichier PARQUET nommé my_parquet_format qui utilise les types logiques PARQUET, au lieu des types physiques ou des types convertis hérités.

CREATE OR REPLACE FILE FORMAT my_parquet_format
  TYPE = PARQUET
  USE_VECTORIZED_SCANNER = TRUE
  USE_LOGICAL_TYPE = TRUE;
Copy