DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Editeurs / Editeur d'analyses / Modèle Logique des Données
  • Types de rubriques
  • Rubriques Tableau
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
Types de rubriques
Les différents types de rubriques proposés dans l'éditeur d'analyses sont les suivants :
TypePermet de stocker :
Textedes caractères alphanumériques
  • Chaîne : une chaîne de caractères de 65.535 caractères maximum. Cette chaîne de caractères est au format Ansi.
  • Mémo texte : une chaîne de caractères de 4 Go maximum. Le format RTF est géré. Ce mémo texte est au format Ansi.
  • Caractère : un seul caractère (initialisé par un 0 binaire, Caract(0)).
  • Unicode : une chaîne de caractères au format Unicode.
  • Mémo texte Unicode : une chaîne de caractères de 4 Go Maximum. Ce mémo texte est au format Unicode.
Numériqueune valeur numérique
  • Entier signé sur 1 octet : valeur comprise entre -128 et 127
  • Entier signé sur 2 octets : valeur comprise entre -32.768 et 32.767
  • Entier signé sur 4 octets : valeur comprise entre
    -2.147.483.648 et 2.147.483.647
  • Entier signé sur 8 octets : valeur comprise entre -9.223.372.036.854.775.808 et 9.223.372.036.854.775.807
  • Entier non signé sur 1 octet : valeur comprise entre 0 et 255
  • Entier non signé sur 2 octets : valeur comprise entre 0 et 65.535
  • Entier non signé sur 4 octets : valeur comprise entre 0 et 4.294.967.296
  • Entier non signé sur 8 octets : valeur comprise entre 0 et 18.446.744.073.709.551.615
  • Réel sur 4 octets : valeur comprise entre -3,4e+38 et +3.4e+38
  • Réel sur 8 octets : valeur comprise entre -1,79e+308 et +1.79e+308
  • Décimal (Numérique WLangage) : un décimal peut avoir jusqu'à 38 chiffres significatifs.
Monétaireune devise
Un monétaire peut avoir jusqu'à 24 chiffres significatifs (18 maximum pour la partie entière, 6 maximum pour la partie décimale) et peut prendre une valeur entre -604 462 909 807 314 587,353 087 et +604 462 909 807 314 587,353 087.
Dateune date ou une durée
  • Date (AAAAMMJJ) : une date au format AAAAMMJJ (dates comprises entre le 01/01/0001 et le 31/12/9999)
  • Date et Heure : une date-heure (comprise entre le 01/01/0001 à 00h00 et le 31/12/9999 à 23h59). La précision est effectuée à la milliseconde.
  • Durée : une durée en millisecondes (comprise entre
    -9.223.372.036.854.775.808 et 9.223.372.036.854.775.807).
Heureune heure
  • Heure (HH) : Heure comprise entre 00H et 23H
  • Heure (HHMM) : Heure comprise entre 00H00 et 23H59. La précision est effectuée à la minute.
  • Heure (HHMMSS) : Heure comprise entre 00H00min00ss et 23H59min59ss. La précision est effectuée à la seconde.
  • Heure (HHMMSSCC) : Heure comprise entre 00H00min00ss00cs et 23H59min59ss59cs. La précision est effectuée au dixième de seconde.
Astuce : Pour conserver une heure avec une précision au centième de seconde, utilisez le type "Date et Heure".
Booléenun booléen (1 : Vrai et 0 : Faux)
Son, image, binaire, ...un fichier ou une chaîne binaire
  • Image (mémo binaire) : un fichier image
  • Son (mémo binaire) : un fichier son
  • OLE (mémo binaire) : un fichier OLE
  • Autre mémo binaire : tout type de fichier
  • Chaîne binaire : une chaîne au format binaire
Interrupteurune valeur associée à un champ Interrupteur
  • Interrupteur : un booléen (1 : Vrai et 0 : Faux)
  • Entier non signé sur 1 octet : une valeur comprise entre 0 et 255
Sélecteur, liste, comboune valeur associée à un champ Sélecteur, un champ Liste ou un champ Combo.
Il est possible de sélectionner le sous-type suivant :
  • Entier sur 1 octet : un indice correspondant à une liste de valeurs. La valeur de cet indice est comprise entre -128 et 127
  • Entier sur 2 octets : un indice correspondant à une liste de valeurs. La valeur de cet indice est comprise entre -32.768 et 32.767
  • Entier sur 4 octets : un indice correspondant à une liste de valeurs. La valeur de cet indice est comprise entre
    -2.147.483.648 et 2.147.483.647
  • Entier non signé sur 1 octet : un indice correspondant à une liste de valeurs. La valeur de cet indice est comprise entre 0 et 255
Id automatiquel'identifiant de chaque enregistrement du fichier.
Sa valeur est automatiquement mise à jour par le moteur de base de données HFSQL.
  • Identifiant automatique (4 octets) : l'identifiant de chaque enregistrement (valeur comprise entre 0 et 2.147.483.647)
    Ce type correspond au type "Identifiant" de WINDEV 5.5
  • Identifiant automatique (8 octets) : l'identifiant de chaque enregistrement (valeur comprise entre 0 et 9.223.372.036.854.775.807)
  • UUID automatique (128 bits) : l'identifiant de chaque enregistrement correspond à un UUID sur 128 bits. Dans ce cas, l'UUID permet d'obtenir un identifiant unique non séquentiel.
  • UUID automatique (256 bits) : l'identifiant de chaque enregistrement correspond à un UUID sur 256 bits. Dans ce cas, l'UUID permet d'obtenir un identifiant unique non séquentiel.
Remarque : Un même enregistrement peut comporter un UUID automatique et un Identifiant automatique (par exemple, pour simplifier la migration d'un existant).
XMLune chaîne de caractères XML (4 Go maximum). Cette chaîne est stockée sous forme de mémo texte.
Index full-textles différents composants de l'index full-text. L'index full-text peut être composé de rubriques de type texte ou mémo texte.
Pour plus de détails sur la création d'un index full-text sous l'analyse, consultez Recherche et index full-text.
Enumération, Combinaison
  • Enumération : une valeur entière parmi les valeurs possibles définies dans l'énumération associée à la rubrique.
  • Combinaison : une valeur entière représentant une combinaison des valeurs possibles définies dans la combinaison associée à la rubrique.
Pour plus de détails sur la création d'une rubrique de type Enumération ou Combinaison, consultez Rubriques de type Enumération et Combinaison.
Rubrique calculée / Formuleune chaîne de caractères en langage SQL représentant une formule de calcul. La formule peut utiliser aussi bien des fonctions SQL et/ou des fonctions WLangage (WL.). Par défaut, seule la formule est stockée, la valeur est calculée lors de l'accès en lecture à l'enregistrement.
Par exemple, calculer l'âge à partir de la rubrique DateNaissance du fichier. La valeur sera directement calculée dans le fichier de données.
CAST(TO_CHAR(SYSDATE,'YYYY') AS int)
- CAST(TO_CHAR(datenaissance,'YYYY') AS int)
Il est possible toutefois de stocker la valeur calculée dans le fichier afin de ne pas refaire le calcul.
Il est possible de stocker la formule en Unicode : le calcul sera plus rapide mais la place occupée par la formule sera plus importante.
Si l'enregistrement est modifié, la formule de calcul est ré-exécutée afin de mettre à jour le buffer du fichier de données avec la nouvelle valeur.
Attention : La gestion du NULL respecte la norme SQL. Par exemple, si une formule ajoute la valeur NULL à une valeur, le résultat correspond lui-même à la valeur NULL.
Horodatageune DateHeure ou une Date ou une Heure représentant la date de création ou de dernière modification de l'enregistrement.
Il est possible de choisir :
  • si la date de création ou de dernière modification de l'enregistrement doit être enregistrée.
  • si l'heure locale ou l'heure UTC doit être utilisée.
Ce type de rubrique est également appelé "Rubrique DateHeure automatique".
UUIDun UUID. Un UUID (Universal Unique IDentifier) est un nombre aléatoire réputé unique. Un UUID est utile pour identifier facilement et de manière certaine un élément quelconque.
Il est possible de choisir :
  • un UUID sur 128 bits. Ce type de rubrique UUID respecte la norme RFC 4122 en 128 bits. Seul le UUID sur 128 bits est normé.
  • un UUID sur 256 bits.
Pour gérer un identifiant automatique de type UUID (automatiquement initialisé par HFSQL), il est nécessaire d'utiliser une rubrique de type "Identifiant", ayant pour sous-type "UUID automatique".
Remarque : L'intérêt majeur de l'UUID est de permettre l'anonymisation et la pseudonymisation, utile au respect de la norme RGPD. L'UUID permet également de gérer des identifiants de cryptomonnaie.
JSONune chaîne JSON. Ce type de rubrique peut contenir NULL, une chaîne vide ou un JSON valide. La vérification du JSON est automatiquement réalisée à l'écriture de l'enregistrement.
Ce type de rubrique est notamment utilisé avec les fonctions SQL JSON.
Mot de passeune chaîne de caractères utilisée comme mot de passe.
La chaîne de caractères contenue dans cette rubrique est "salée" et "hachée". C'est le résultat de ces opérations qui est stocké dans la rubrique, ainsi que le sel utilisé pour le salage et le type d'algorithme utilisé. Ces informations ne permettent pas de reconstituer le mot de passe d'origine.
Ce mot de passe ne peut pas être affiché à l'utilisateur.
Il est possible de choisir :
  • l'algorithme de dérivation de clé,
  • l'algorithme de hash,
  • le nombre d'itérations,
  • la taille du résultat.
Pour plus de détails, consultez Type de rubrique : Mot de passe sécurisé.
Données géométriquesune donnée géométrique, utilisant un repère euclidien. Cette donnée peut correspondre à un des sous-types suivants :
  • Point en 2 dimensions,
  • Polyligne en 2 dimensions,
  • Polygone en 2 dimensions,
  • MultiPoint en 2 dimensions,
  • MultiPolyligne en 2 dimensions,
  • MultiPolygone en 2 dimensions.
Ce type de rubrique peut être une clé spatiale.
Données géographiquesune donnée géographique, utilisant des coordonnées géographiques (latitude et longitude). Cette donnée peut correspondre à un des sous-types suivants :
  • Point géographique,
  • Polyligne géographique,
  • Polygone géographique,
  • MultiPoint géographique,
  • MultiPolyligne géographique,
  • MultiPolygone géographique.
Ce type de rubrique peut être une clé spatiale.
Données géométriques ou géographiques quelconquesune donnée géométrique ou géographique. Dans ce cas, la donnée correspond à une géométrie (en 2 dimensions ou géographique).

Remarque : Les rubriques Unicode sont gérées par la librairie wdxxxuni.dll. Cette librairie n'est pas disponible sous WINDEV Mobile.

Rubriques Tableau

Certains types de rubriques peuvent correspondre à un tableau : le contenu de la rubrique sera indicé.
Pour définir une rubrique de type Tableau :
  1. Créez une rubrique. Les types de rubriques pouvant correspondre à un tableau sont : Texte, Numérique, Monétaire, Date, Heure, Booléen, Interrupteur.
  2. Dans la description de la rubrique :
    • Cochez l'option "Tableau" et indiquez la dimension du tableau.
      Attention : La dimension du tableau est fixe. L'espace correspondant est réservé même si la rubrique n'est pas renseignée.
    • La taille réelle de la rubrique est affichée.
  3. Indiquez si nécessaire les valeurs par défaut de chaque élément du tableau.
  4. Validez.
Remarques :
  • Le premier indice commence à 1.
  • La syntaxe de manipulation des rubriques tableau est la suivante : <Nom fichier>.<Nom rubrique>[<Indice>]
  • Attention : Ce type de rubrique est conservé par compatibilité. La majorité des bases de données SQL ne supportent pas ce type de rubriques.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 02/12/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale