TRY_TO_FILE¶
Une version de TO_FILE qui renvoie NULL au lieu de provoquer une erreur.
Syntaxe¶
Utilisez l’une des méthodes suivantes :
TRY_TO_FILE( <stage_name>, <relative_path> ) TRY_TO_FILE( <file_url> ) TRY_TO_FILE( <metadata> )
Arguments¶
Spécifiez le fichier en fournissant :
stage_nameetrelative_pathfile_urlmetadata
Une seule de ces méthodes peut être utilisée à la fois.
stage_nameLe nom de la zone de préparation où se trouve le fichier, sous forme de chaîne, au format
‘@stage_name'.relative_pathLe chemin d’accès au fichier de la zone de préparation spécifiée par
stage_namesous forme de chaîne.file_urlUne zone de préparation ou une URL de fichier limitée valide sous la forme d’une chaîne.
metadataUn OBJECT contenant les attributs FILE requis. Un FILE doit comporter les champs CONTENT_TYPE, SIZE, ETAG, et LAST_MODIFIED. Il doit également spécifier l’emplacement du fichier de l’une des manières suivantes :
Les deux valeurs STAGE et RELATIVE_PATH
STAGE_FILE_URL
SCOPED_FILE_URL
Renvoie¶
Un FILE ou NULL.
Notes sur l’utilisation¶
Renvoie NULL lorsque :
L’URL fournie n’est pas valide.
Le fichier se trouve sur une zone de préparation à laquelle l’utilisateur ne peut pas accéder.
Les métadonnées fournies ne contiennent pas les champs FILE requis.
Exemples¶
Contrairement à TO_FILE, qui signale une erreur sur des arguments non valides, TRY_TO_FILE renvoie NULL dans ce cas. Sinon, cela fonctionne exactement comme TO_FILE.
L’exemple ci-dessous illustre le comportement de TRY_TO_FILE lorsque le chemin du fichier n’est pas valide, en supposant que le fichier image.png existe sur la zone de préparation, mais pas les deux autres fichiers.
SELECT
TRY_TO_FILE('@mystage/image.png'),
TRY_TO_FILE('@mystage/incorrect_file1.jpg'),
TRY_TO_FILE('@mystage', 'incorrect_file2.png');
Résultat :
+-----------------------------------------------------+---------------------------------------------+------------------------------------------------+
| TRY_TO_FILE('@MYSTAGE/IMAGE.PNG') | TRY_TO_FILE('@MYSTAGE/INCORRECT_FILE1.JPG') | TRY_TO_FILE('@MYSTAGE', 'INCORRECT_FILE2.PNG') |
|-----------------------------------------------------|---------------------------------------------|------------------------------------------------|
| { | NULL | NULL |
| "CONTENT_TYPE": "image/png", | | |
| "ETAG": "2859efde6e26491810f619668280a2ce", | | |
| "LAST_MODIFIED": "Thu, 18 Sep 2025 09:02:00 GMT", | | |
| "RELATIVE_PATH": "image.png", | | |
| "SIZE": 23698, | | |
| "STAGE": "@MYDB.MYSCHEMA.MYSTAGE" | | |
| } | | |
+-----------------------------------------------------+---------------------------------------------+------------------------------------------------+
Pour plus d’exemples de création d’objets FILE à partir d’entrées valides, consultez les exemples TO_FILE.