PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE


  • Présentation
  • Définition
  • Quand utiliser une vue matérialisée ?
  • Créer une vue matérialisée
  • Présentation
  • Création depuis l'éditeur d'analyses
  • Création en utilisant le code SQL
  • Utiliser une vue matérialisée
  • Présentation
  • Droits sur une vue matérialisée
  • Modification du contenu d'une vue matérialisée
  • Index sur une vue matérialisée
  • Fonctions WLangage permettant de manipuler une vue matérialisée
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Présentation

Définition

Une vue matérialisée est une source de données physique définie par une requête SQL. Elle est créé physiquement sur le serveur HFSQL. Elle peut être manipulée comme un fichier HFSQL par les applications qui accèdent à la base de données.
L'application peut utiliser ou manipuler une vue matérialisée en utilisant les fonctions classiques de gestion des fichiers de données. Les données manipulées ne sont pas mises à jour automatiquement : il est nécessaire de demander la mise à jour des données.

Quand utiliser une vue matérialisée ?

L'utilisation d'une vue matérialisée présente plusieurs avantages :
  • Indépendance vis-à-vis de la structure physique des données :
    La vue matérialisée correspond à une couche d'abstraction entre l'organisation des données et l'utilisation des données. Si la structure physique des données évolue, le code de l'application ne change pas. Seule la requête de base de la vue doit être adaptée à la nouvelle structure.
  • Accélération des traitements
    L'utilisation d'une vue matérialisée est intéressante si l'extraction des données de la vue est un processus long et si les données n'ont pas une obligation de temps réel. Par exemple :
    • statistiques,
    • reporting,
    • databinding,
    • sélections pour mailings,
    • ciblages,
    • création de fichiers de données "à plat",
    • ...
Créer une vue matérialisée

Présentation

Il existe plusieurs méthodes pour créer une vue matérialisée :
  • Création de la vue matérialisée depuis l'éditeur d'analyses. Dans ce cas, pour utiliser la vue matérialisée, une mise à jour des données sur le serveur est nécessaire. Cette mise à jour peut être effectuée :
    • via la modification automatique des données (effectuée lors de l'installation de l'application par exemple).
    • via la fonction HMiseAJourVue.
  • Création de la vue matérialisée en utilisant directement le code SQL "CREATE MATERIALIZED VIEW" dans l'application.

Création depuis l'éditeur d'analyses

Pour créer une vue matérialisée depuis l'éditeur d'analyses :
  1. Lancez l'assistant de création de vues :
    • Dans le ruban, sous le volet "Analyse", dans le groupe "Création", déroulez "Nouveau" et sélectionnez "Vue".
    • Sous le volet "Analyse", sélectionnez le dossier "Vues" puis sélectionnez l'option "Nouvelle vue" du menu contextuel.
  2. Dans l'assistant, sélectionnez "Créer une vue matérialisée" puis passez à l'écran suivant (flèche en bas de l'assistant).
  3. Indiquez le nom de la vue à créer puis sélectionnez le mode d'édition de la requête de base de la vue :
    • Assistant. Dans ce cas, la requête de la vue est créée via l'assistant de création de requêtes. La requête est affichée graphiquement. Il est possible à tout moment de modifier la requête via l'assistant.
    • Code SQL. Dans ce cas, vous saisissez directement le code SQL de sélection des éléments sélectionnés par la vue.
  4. La vue matérialisée est créée. Par défaut, elle n'est pas associée à une connexion. Pour associer la vue à une connexion définie sous l'éditeur d'analyses :
    • Sous le volet "Analyse", sélectionnez la vue matérialisée qui vient d'être créée.
    • Dans le menu contextuel (clic droit), sélectionnez l'option "Description de la vue".
    • Dans la fenêtre qui s'affiche, vous pouvez modifier le nom de la vue matérialisée et spécifier la connexion associée à la vue matérialisée.
    • Validez.
  5. Générez l'analyse pour utiliser la vue matérialisée dans le code de l'application : sous le volet "Analyse", dans le groupe "Analyse", déroulez "Génération" et sélectionnez "Génération".
Remarques :
  • Une clé ou une clé composée sera créée selon le "ORDER BY" défini.
  • Les vues matérialisées ne peuvent pas contenir de paramètres.

Création en utilisant le code SQL

Pour créer une vue matérialisée en utilisant du code SQL, il suffit d'utiliser l'instruction CREATE MATERIALIZED VIEW dans le code SQL de la requête. Par exemple :
// Création de la vue matérialisée
MonCodeVueMatérialisée est une chaîne
MonCodeVueMatérialisée = [
Create materialized view Vue_Client
AS SELECT * FROM Client
]
HExécuteRequêteSQL(Req_Vue, ConnexionHFSQL, MonCodeVueMatérialisée)
Attention : Le code SQL de création de la vue matérialisée doit faire référence uniquement aux rubriques et aux fichiers de données définis dans l’analyse. Par exemple, il n’est pas possible d'utiliser dans ce code des références à des requêtes stockées.
Utiliser une vue matérialisée

Présentation

Pour utiliser une vue matérialisée, il suffit d'utiliser les fonctions HFSQL d'accès aux fichiers de données. Le paramètre <Nom du fichier> correspondra au nom de la vue matérialisée.
Comme un fichier de données classique, une vue matérialisée peut être :
  • parcourue par les fonctions HFSQL (POUR TOUT, HLit*, ...),
  • associée à un champ (champ Table, Liste, ...).
Remarque : Si la vue matérialisée n'a pas été créée sous l'éditeur d'analyses, il est nécessaire d'utiliser la fonction HDéclareExterne avant de la manipuler.

Droits sur une vue matérialisée

Une vue matérialisée correspond à un fichier de données. La gestion des droits se fait comme pour les fichiers de données. Ces droits peuvent être paramétrés :
  • via le Centre de Contrôle HFSQL (non disponible dans cette version). via le Centre de Contrôle HFSQL.
  • via la fonction HModifieDroitVue.
Remarque : La fonction HInfoDroitVue permet de connaître les droits actuels sur la vue matérialisée.

Modification du contenu d'une vue matérialisée

Le contenu d'une vue matérialisée est mis à jour :

Index sur une vue matérialisée

Il est possible de créer un index sur une vue matérialisée à l'aide de l'instruction CREATE INDEX. Si la vue matérialisée est rafraîchie, les index sont mis à jour automatiquement : il n'est pas nécessaire de recréer les index.
Fonctions WLangage permettant de manipuler une vue matérialisée
Les fonctions WLangage permettant de manipuler les vues matérialisées sont les suivantes :
Versions 20 et supérieures
HInfoVue
Nouveauté 20
HInfoVue
HInfoVue
Renvoie des informations sur une vue matérialisée.
Versions 20 et supérieures
HMiseAJourVue
Nouveauté 20
HMiseAJourVue
HMiseAJourVue
Crée ou met à jour la description d’une vue SQL ou d’une vue matérialisée depuis l’analyse vers un serveur HFSQL.
Versions 20 et supérieures
HRafraîchitVue
Nouveauté 20
HRafraîchitVue
HRafraîchitVue
Demande le recalcul du contenu d’une vue matérialisée.
Version minimum requise
  • Version 20
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire