Chargement de données depuis des tables inline
Saisissez des données manuellement dans un script pour définir une table inline.
Vous créez des tables inline en saisissant des données manuellement dans le script au lieu de vous connecter à des fichiers et des bases de données. Utilisez la syntaxe requise pour indiquer que le texte du script doit être interprété comme des données inline.
Un chargement inline de base crée une table et insère les champs de données et les enregistrements.
Pourquoi utiliser des chargements inline ?
Les chargements inline peuvent s'avérer utiles dans un certain nombre de cas d'utilisation :
-
Administration et édition de données sans avoir à se connecter à des sources externes.
-
Enrichissement de données existantes dans le modèle de données. Par exemple, vous pourriez ajouter une table supplémentaire à un modèle de données provenant essentiellement de sources de bases de données.
-
Ajout de données que vous souhaitez éviter d'avoir à charger continuellement depuis des sources externes. Cela peut vous faire gagner du temps, si vous savez qu'il se peut que la source de données change à l'avenir, mais que les valeurs des données resteront les mêmes.
-
Facile à utiliser pour copier-coller du contenu dans le script à partir d'autres fichiers. Par exemple, des fichiers ou tables .csv provenant de documents de traitement de texte.
-
Création de scripts test rapides à copier-coller.
Exemple de syntaxe de base
Le script suivant contient un chargement inline simple.
MyTable:
Load * Inline [Country, Year, Sales
Argentina, 2014, 66295.03
Argentina, 2015, 140037.89
Austria, 2014, 54166.09
Austria, 2015, 182739.87
];
La syntaxe suivante est utilisée pour le chargement inline ci-dessus :
-
Load * Inline indique à QlikView de charger tous les champs de la table inline qui suit.
-
MyTable: définit le nom de la table.
-
Les données sont encadrées par des crochets.
-
La première ligne de l'instruction load définit les champs de données.
-
Des virgules séparent les champs de données et les enregistrements.
-
Un point-virgule ferme l'instruction load.
Vue d'ensemble de la syntaxe
Nommage de la table
Vous pouvez ajouter un nom à la table inline, comme vous le feriez pour d'autres tables chargées. La définition du nom de table est facultative.
Après le nom de la table, insérez deux-points.
Instructions LOAD et inline
Une table inline est chargée avec la clause inline lorsque vous utilisez l'instruction de script LOAD. La clause inline indique que le texte qui suit dans la table contient des données saisies manuellement dans l'éditeur. Sauf indication contraire de votre part, une table inline utilise le format txt, qui suit la structure d'un fichier texte délimité.
Pour plus d'informations sur l'instruction LOAD, voir Load.
Encadrements et saisie de données
Les données saisies via une clause inline doivent être encadrées de caractères spécifiques. Les combinaisons de caractères suivantes sont acceptées pour encadrer les données :
-
Crochets : [ et ]
-
Guillemets doubles : " et "
-
Guillemets simples : ' et '
-
Backticks : ` et `
Le caractère que vous sélectionnez comme encadrement peut vous aider à charger des données inline contenant des caractères conflictuels. Par exemple, si vos données contiennent des enregistrements avec des crochets, vous pouvez les encadrer de guillemets ou de backticks.
Pour un exemple d'encadrements alternatifs, voir Exemple - Encadrements de données alternatifs.
À moins de spécifier un format de table alternatif (la valeur par défaut est txt), le texte encadré est interprété de la même manière que le contenu d'un fichier. C'est pourquoi vous devez également insérer une nouvelle ligne dans la clause inline, là où vous en auriez inséré une dans un fichier texte : en appuyant sur la touche Entrée lors de la saisie du script.
Fin de l'instruction inline load
La fin de l'instruction inline load est indiquée par un point-virgule.
Transformation de données
Dans un chargement inline simple sans transformations, le nombre de colonnes est défini par la première ligne. Il existe trois colonnes dans la table chargée par l'exemple suivant : Product_ID, Supplier_Name et Product_Category.
Products:
Load * Inline [
Product_ID, Supplier_Name, Product_Category
1, Paracel, Home Decor
2, PageWave, Electronics
3, Talarian, Software
4, Userland, Appliances
];
Vous pouvez également effectuer des transformations et créer de nouvelles colonnes au sein de la même table inline. Vous pouvez utiliser preceding loads, et plusieurs instructions LOAD peuvent être utilisées pour charger la même table.
Pour des exemples spécifiques, voir Exemples - Chargements inline avec des transformations.
Configuration de la spécification de format d'un chargement inline
Comme avec les autres tables chargées, vous pouvez modifier la spécification de format de la table inline via des éléments de spécification de format. La spécification de format est ajoutée entre parenthèses. Elle doit être ajoutée après les encadrements de données, mais avant le point-virgule mettant fin à l'instruction LOAD. Voici quelques-unes des personnalisations que vous pouvez inclure :
-
Remplacement du délimiteur de type virgule par un autre caractère. Pour des exemples, voir Exemples - Délimiteurs alternatifs.
Voir : Delimiter
-
Omission des en-têtes de colonne de table. Pour un exemple, voir Exemple - Omission d'en-têtes de colonne.
Voir : Labels
-
Utilisation d'un autre format de données (par exemple, un format d'enregistrement fixe). Pour un exemple, voir Exemple - Chargement d'un autre type de données.
Voir : Format de table
Note InformationsToutes les options Table format ne sont pas prises en charge pour les chargements inline. -
Autorisation de contenu multiligne. Pour un exemple, voir Exemple - Contenu multiligne.
Voir : Quotes
Pour pouvoir utiliser plusieurs éléments de spécification de format dans la même table, séparez-les à l'aide de virgules. Par exemple : (Delimiter is '|', no labels)
Pour des informations détaillées complètes sur la spécification de format, voir Éléments de spécification du format.
Opérateurs et autres clauses
De plus, étant donné qu'un chargement inline est une instruction LOAD, vous pouvez combiner d'autres arguments pour l'instruction LOAD dans le chargement inline. Par exemple, utilisez la clause where ou while pour définir s'il faut ou non charger une ligne spécifique, en fonction du texte qu'elle contient.
De même, vous pouvez utiliser des opérateurs en dehors du contenu de texte lui-même. Grâce à des opérateurs, vous pouvez personnaliser la manière de transformer les données inline et définir quand charger certaines données ou non.
Pour un exemple spécifique, voir Exemple - Opérateurs de transformations et de clauses.
Exemple - Encadrements de données alternatifs
Vous pouvez utiliser des crochets, des guillemets ou des backticks pour encadrer un chargement inline. Cette section le montre à l'aide d'un exemple. Pour plus d'informations, voir Encadrements et saisie de données.
Exemples - Délimiteurs alternatifs
Vous pouvez utiliser un caractère autre qu'une virgule pour délimiter les valeurs des colonnes de la table. Pour plus d'informations, voir Configuration de la spécification de format d'un chargement inline.
Exemple - Omission d'en-têtes de colonne
Modifiez la spécification de format pour charger une table inline sans définir d'en-têtes de colonne. Cela s'effectue via la spécification de labels (en définissant cette option sur la valeur no labels). Pour plus d'informations, voir Configuration de la spécification de format d'un chargement inline.
Lorsque vous chargez une table sans définir de noms de colonne, les noms de colonne définis par le système sont automatiquement utilisés.
Exemple - Chargement d'un autre type de données
Cet exemple montre comment charger une table inline dans un format d'enregistrement fixe. Voir Configuration de la spécification de format d'un chargement inline.
Exemple - Contenu multiligne
Cet exemple montre comment saisir le contenu d'un champ multiligne dans une table inline. Voir Configuration de la spécification de format d'un chargement inline.
Exemples - Chargements inline avec des transformations
Ces exemples montrent comment effectuer des calculs sur des champs chargés inline pour créer de nouveaux champs dans le modèle de données.
Pour plus d'informations, voir Transformation de données.
Exemple - Opérateurs de transformations et de clauses
Vous pouvez utiliser des opérateurs pour définir des transformations et des clauses spécifiques dans l'instruction LOAD. Pour plus d'informations, voir Opérateurs et autres clauses.
Exemple - Création de valeurs nulles dans une table inline
Cet exemple montre comment utiliser la variable NullInterpret pour créer des valeurs nulles dans vos données inline.
Autres exemples
Pour des exemples supplémentaires, voir Load.