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>' ]
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
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>' ]
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
ou0x
). 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
ou0x
). 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é surNONE `
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, siCOMPRESSION
est défini.
Note
Si lâoption de copie
SINGLE
estTRUE
, 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 chemininternal_location
ouexternal_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
ouRECORD_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 fichierRECORD_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 surNONE
.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 queFIELD_DELIMITER = '|'
etFIELD_OPTIONALLY_ENCLOSED_BY = '"'
:|"Hello world"| /* loads as */ >Hello world< |" Hello world "| /* loads as */ > Hello world < | "Hello world" | /* loads as */ >Hello world<
(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 de2
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 laESCAPE_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
. LorsqueFIELD_OPTIONALLY_ENCLOSED_BY = NONE
, le paramĂštreEMPTY_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 de2
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, siCOMPRESSION
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 surTRUE
: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 UnicodeU+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 de2
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 de2
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 seraTRUE
.
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 surTRUE
, le scanner vectorisĂ© se comporte comme suit :Lâoption
BINARY_AS_TEXT
est toujours traitée commeFALSE
et lâoptionUSE_LOGICAL_TYPE
est toujours traitée commeTRUE
, 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" }
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" ] }
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é surFALSE
, 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" } ] }
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" ] }
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 de2
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 UnicodeU+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 |
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
etIF 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';
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
etnull
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;
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;
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;