performance, sÉcuritÉ, disponibilitÉ · s’exécutant sous windows ce, windows mobile, windows...

24
www.pcsoft.fr PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ BASE DE DONNÉES Windows, Linux, Mac, Android, iOS (iPhone, iPad) Client/Serveur, Monoposte, Mobile, Embarqué WINDEV • WEBDEV • WINDEV Mobile ®

Upload: lamdung

Post on 13-Sep-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

www.pcsoft.fr

PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ

BASE DE DONNÉESWindows, Linux, Mac,

Android, iOS (iPhone, iPad)Client/Serveur, Monoposte,

Mobile, Embarqué

WINDEV • WEBDEV • WINDEV Mobile

®

Page 2: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Table des matièresPrésentation 3Local 4Mobile – embarqué 4Client/Serveur 4Types de données et index 5SQL 6Fonctionnalités 6Sécurité 10Ouverture 11WINDEV et WEBDEV 11Les outils 13Programmation 17

Liste des ordres SQL supportés 17

Liste des ordres WLangage 18

Vocabulaire 21Qui utilise HyperFileSQL ? 22Avantages 22Résumé des fonctionnalités 24

BIENVENUE DANS UN MONDE DE SÉCURITÉ ET DEPERFORMANCES

Les données d’une entreprise sont uneressource vitale.Le Système de Gestion de Base de DonnéesRelationnelle vous permetde gérer ces données en toute sécurité.Les performances sont remarquables.Utilisé sur plusieurs millions de postes à tra-vers le monde, la flexibilité et l'évolutivitéde permettent de répondreaux besoins les plus exigeants des applica-tions à mission critique en temps réel.Vous aussi, choisissez !

Documentation technico-commerciale HyperFileSQL.La connaissance de WINDEV, ou WEBDEV ou WINDEV Mobileest utile. Si vous ne les connaissez pas, n’hésitez pas à demander

les documentations complètes (gratuites, en français) sur ces logiciels.

HyperFileSQL est diffusé depuis 1988.

329 millions de milliards de lignes par table...

Version de documentation 2012-11. Version de référence : 18

®

Page 3: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

PRÉSENTATION DEHYPERFILESQLGénéralités

HyperFileSQL est un puissant SGBDR (Système de Gestion de Basede Données Relationnelle).HyperFileSQL est décliné en 3 versions : • version mobile (embarquée)• version locale (monoposte ou réseau)• version Client/Serveur (et cluster).HyperFileSQL est adapté à tous les types d’applications: applica-tions métiers, applications critiques temps réel, progiciels, serveursd’applications, serveurs Web, PC stand-alone ou périphériquesmobiles.

performance, sécurité,

ouverture, flexibilité

HyperFileSQL est le choix idéal comme moteur de base de données.Ouverture: basé sur les standards de l’industrie, HyperFileSQL nevous enferme pas dans une technologie propriétaire.Flexibilité: le support des volumes de données importants (plu-sieurs dizaines de milliards de lignes dans une table) est assuré.Indépendance vis à vis de la plateforme: les tables peuvent êtredéplacées d’un Client/Serveur vers un mobile, d'un serveur Win-dows vers un serveur Linux, etc…Extensibilité: vous passez sans contraintes de un utilisateur à plu-sieurs centaines d’utilisateurs, d’une architecture 2 tier à une ar-chitecture multi-tier...Econome en ressources: le moteur Client/Serveur occupe moinsde 20Mo sur disque.HyperFileSQL fonctionne en environnement hétérogène: Windows, Linux, Mac, iOS, Android, TSE, Citrix, ADSL, VPN, Wi-Fi…La compatibilité ascendante et descendante des tables est assurée.Pérennité de l’éditeur: PC Soft est présent depuis plus de 25 ans,et est n°1 en France dans le domaine des AGL.Performance, scalabilité: grâce à une gestion optimisée desindex et une gestion affinée des caches, la vitesse est perma-nente.Sécurité d’accès: la protection contre l’injection SQL est assuréevia la création automatique d‘IHM sécurisées.

Coût d’usage (TCO) réduit

Une caractéristique de HyperFileSQL est son déploiement illimitélibre et gratuit (voir la licence).Il n’y a aucun coût facturé, ni en fonction du nombre de proces-seurs du serveur, ni en fonction du nombre de postes client, ni an-nuellement, ni en fonction du type d’application (commerciale,...)

etc...HyperFileSQL est livré en une édition systé-

matiquement complète, avec toutes lesfonctionnalités, gratuite.Les coûts de maintenance sont très ré-duits.

Le support technique est égalementgratuit (dans le cadre d’une licenceWINDEV, WEBDEV ou WINDEV Mobile).Il est assuré par téléphone et par mail.Les DBA et développeurs disposent éga-lement de forums professionnels (mo-dérés) très actifs.

La revue LST (éditée par PC SOFT) publierégulièrement des articles de fond etdes articles pratiques sur HyperFileSQL.Des mises à jour («services pack ») sontrégulièrement mises à disposition gra-tuitement.

HyperF i leSQL • www.pcsoft . fr

3

:PUISSANTEBASE DE DONNÉES

WINDOWSSERVEUR

MOBILE

8 7, VISTA

XP2000, 2003, 2008NT

IPHONE

IPAD

LINUX

ANDROID

IOS

MAC

TSECITRIX

ACCÈS LOCAL

RÉSEAU LOCALWIFI

MODEM,3G,4G

ADSL

LIGNE SPÉCIALISÉE

100% Windows100% Linux100% Mobile

Page 4: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

LES VERSIONSversion Locale

(version «classic»)

La version locale (monoposte et réseau) de HyperFileSQL (égale-ment dénommée version «Classic», car il s’agissait de la premièreversion disponible, dès 1988) offre performances, simplicité dedéploiement, d'installation et de configuration.La compatibilité avec les versions mobiles et Client/Serveur est to-tale (tables, index, relations, contraintes).Cette version est plus particulièrement destinée aux postes de tra-vail indépendants, et aux petits réseaux.Un usage courant de la version Classic est son utilisation dans unprogiciel.

La base de données se créera et s’installera automatique-ment sur le PC de l’utilisateur du progiciel. La mainte-nance sera automatique.Une base de données Classic peut également être situéeet directement utilisable sur une clé USB.

HyperFileSQL Classic s’installe sur les machines équipéesde Windows (NT, 2000, 2003, Vista, 7, 8...), MacOS, iOS(iPhone et iPad), Android et sur les serveurs Linux.

HyperFileSQL fonctionne également sur Mac

version Mobile

(embarquée)

HyperFileSQL est totalement adapté au développement croissantdes périphériques mobiles de tous types. HyperFileSQL ne demande que de faibles ressources, et s’installesur tous les mobiles (terminal, pocket PC, smartphone, tablette)s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT,iOS (iPhone et iPad), Android.L’installation est simplissime, et la maintenance, quasi nulle, estautomatisée.

Les performances sont étonnantes de rapidité.La compatibilité avec les versions locales et Client/Serveur est to-tale :tables, index, relations, contraintes.Selon vos besoins, l’accès aux données dans une application mo-bile peut s’effectuer depuis de nombreuses technologies: Active-Sync, Accès direct, Accès par RPC, Webservices, Sockets,Procédures stockées directes...

version Client/Serveur

La version Client/Serveur de HyperFileSQL est la version idéalepour gérer de nombreux utilisateurs et des accès distants.Les accès locaux et les accès distants sont gérés.L’installation est simplissime, et l’administration, bien que trèspuissante, s’effectue facilement.

HyperFileSQL n’est pas limité en nombre de processeurs utilisés, nien mémoire.Le load balancing est géré pour de meilleurs temps de réponse.Le moteur est auto-restart.Les clusters permettent d’assurer une disponibilité sans faille.La compatibilité avec les versions embarquées et locales est totale(tables, index, relations, contraintes).HyperFileSQL fonctionne à la fois en 32 bits et en 64 bits. Serveurset clients peuvent être mixés.

Parmi les serveurs Windows gérés:• Windows Server 2008• Windows Server 2003• Windows 2000• Windows XP & Vista,• Windows 7dans toutes leurs éditions.

Parmi les distributions Linux supportées: • RedHat 9• Debian 4.0• OpenSuse 10.3 et 11.1• Ubuntu 7.10, 8.04 et 8.10• Fedora 8 et 9• Mandriva 2008

Parmi les clients supportés:• Windows 32 bits et 64 bits• Linux• MacOS, iOS• Windows CE et Mobile • Android

HyperF i leSQL • www.pcsoft . fr

4

Imaginez, 128 Giga Octets sur une carte mé-moire. Il y a quelques années, c’était la capacitédes disques dur sur les PC de bureau ! Vous pou-vez maintenant embarquer facilement et à faiblecoût des bases de données (sécurisées) de tailleimportante (jusqu’à 130 millions de lignes) sur lespockets, mobiles et téléphones.

iOS

Page 5: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

DONNÉES ETINDEXType de données

HyperFileSQL gère tous les types de données:• Texte, caractère• Numérique (entier, réel, décimaux à 38 chiffres significatifs), • Date, heure, durée• Booléen• Colonne de type tableau• Blob («mémo», format binaire: image, vidéo,...)

Des fonctionnalités puissantes sont disponibles:• Unicode est géré, avec gestion des tris linguistiques• L’ordre de tri de tous les jeux de caractères est pris en compte.• Valeur par défaut• Gestion du Null.

Unicode

HyperFileSQL gère les colonnes «texte» et «blob» de type Uni-code. Les index peuvent être triés en fonction de l’ordre linguis-tique de chaque langue (russe, de Russie ou d’Ukraine, chinois deSingapour, de Taïwan, Hong Kong, Macao,...).

Des données en chinois

Un rappel sur les systèmes d’exploitation: le codage et l’exécutionde Windows en mobile est Unicode, alors que le codage et l’exé-cution de Windows sur PC est ANSI.Lorsque celà est nécessaire, le WLangage convertit automatique-ment les chaines UNICODE en ANSI (et réciproquement) en te-nant compte de l'alphabet courant.

Index & Clés

HyperFileSQL gère clés et index sur tous les types de colonne.Afin d’assurer des performances optimales HyperFileSQL crée au-tomatiquement un index lors de la définition d’une clé.

Sont gérés:• Index simple• Index composé (multi-colonnes)• Index partiel• Index full text

HyperFileSQL assure l’intégrité des données en gérant :• Contrainte d’unicité• Contrainte de cardinalité• Identifiant Automatique• Clés primaires et étrangères.

Index Full text

La recherche «full text» permet la recherche de chaînes de carac-tères (mots ou expressions) très rapide dans les données. Elle per-met par exemple de retrouver un mot parmi 1 million de lignes enmoins de 2 ms (moyenne par occurrence trouvée).Il est donc possible d’indexer sans programmation les textes pré-sents dans une base de données HyperFileSQL. Les résultats sont proposés selon un ordre de pertinence («ran-king»).La création de l’index peut gérer les textes enrichis (RTF, HTML),en ignorant les balises de ces formats lors de l’indexation.Cette fonctionnalité permet d’effectuer des recherches de motsstockés dans des documents RTF ou HTML.

Ces textes peuvent être contenus dans des champs de type«texte» ou des champs «blob» («mémo»).

Un index full text peut indexer une ou plusieurs colonnes diffé-rentes, donc une simple recherche peut s’effectuer sur plusieurscolonnes différentes simultanément.

Capacités

HyperFileSQL Client/Serveur offre des capacités de stockages éle-vées, en phase avec les moyens de stockage actuels et avec ceuxdu futur, ainsi qu’avec les besoins croissants des entreprises.Lors d’un récent roadshow, devant près de 10.000 professionnelsdu développement, PC SOFT a présenté l’utilisation d’une baseHyperFileSQL contenant plus de 15 milliards (15.000 millions) delignes: les recherches sur les données étaient immédiates dès ledémarrage du serveur (sans même que des caches soient rem-plis!).

HyperF i leSQL • www.pcsoft . fr

5

Page 6: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

SQL : PRÉSENTATION

HyperFileSQL gère une grande partie de la norme Ansi SQL 92. Le SQL géré par HyperFileSQL supporte également de nombreusessyntaxes supplémentaires et spécifiques de SQL Server et Oracle,entre autres.HyperFileSQL gère les sous requêtes et les requêtes imbriquées.HyperFileSQL gère les opérateurs ensemblistes: union, cartésien,jointure, jointure externe, les opérateurs d'agrégation: count,sum, avg, min, max, les opérateurs de tri et de regroupement:group by, having, order by...

En complément du SQL, il est possible de bénéficier de la richessefonctionnelle du WLangage par l’utilisation directe de fonctionsWLangage, et par appel de procédures stockées (elles-mêmes dé-veloppées en WLangage).

La vitesse du moteur SQL est optimisée entre autres par l’utilisa-tion des statistiques des index et les contraintes pour choisir lesindex d’accès les plus discriminants lors des requêtes.La gestion avancée des caches mémoire améliore également lesperformances.Le moteur effectue automatiquement la gestion/ répartition de lacharge: si un client exécute de très nombreuses requêtes consom-matrices de ressources (CPU,...) , le serveur équilibre automatique-ment la charge pour ne pas pénaliser les autres clients.

Vous trouverez en fin de ce document la liste des fonctions SQLsupportées par HyperFileSQL, ainsi que les autres aspects de pro-grammation (programmation des curseurs).

FONCTIONNALITÉSLes fonctionnalités offertes par HyperFileSQL sont très nom-breuses.Vous trouverez ci-après la description des principales fonctionnalités.

Procédures stockées

(UDF)

Les procédures stockées (quelquefois appelées UDF) permettentde faciliter l'évolution et la maintenance de vos applications enfactorisant le code.

En effet, lorsque la façon de calculer un résultat ou une règle mé-tier contenue dans une procédure stockée évolue, il vous suffirade modifier seulement la procédure stockée sur le serveur, sanseffectuer la moindre modification dans les applications déployées.Une procédure stockée permet également de limiter le nombred’allers et retours entre le poste client et le serveur, et donc amé-liore également la vitesse des traitements.Une même procédure stockée peut être partagée entre plusieursapplications.Les procédures stockées se programment en WLangage, et béné-ficient donc de la richesse fonctionnelle et de la facilité de ce L5G.Les procédures stockées prennent des paramètres et/ou retour-nent des entiers, chaines, date, etc…La création d’une procédure stockée depuis l’environnement deWINDEV est vraiment très facile.

Sous l’éditeur de schéma de données (éditeur d’analyses)

Triggers

Un trigger permet de déclencher une procédure stockée avant ouaprès un événement sur une table de la base de données: parexemple avant une suppression de ligne, ou après la modificationd’une ligne. Un trigger apporte une grande sécurité. Le trigger sera déclenchéquelle que soit l’application ou composant qui accède à la basede données et qui effectue l’opération définie, sans que le déve-loppeur de l’application n’ait quoi que ce soit à programmer.Les triggers «serveur», comme leur nom l’indique, s’exécutent di-rectement sur le serveur.Le «droit» de créer un trigger est défini via les droits de la base dedonnées.L’environnement de WINDEV avertit le développeur de la présencede ces triggers (les triggers sont visualisés dans l’analyse).

Intégrité : contrainte,

suppression, mise à jour

en cascade

Il est facile de définir des contraintes d’intégrité.Les cardinalités sont paramétrables: (0,n) ; (0,1); (1,n); (3,n); etc...Les liaisons réflexives sont supportées.Exemples de contraintes d’intégrité référentielle :• Intégrité référentielle:L'intégrité référentielle interdira l'effacement d'un auteur, tantque dans la base de données il existera au moins un livre se réfé-rant à cet auteur.Il n’est pas possible de supprimer une ligne dans une table si cette

CAPACITÉS MAXIMALES HYPERFILESQL

Colonnes par table 65 535Index par table 65 535Lignes par table 329 millions de milliardsTaille d’une table 4 millions de térasTaille d’une ligne 2 GoTaille d’une colonne 65 535 octetsTaille d’une colonne blob (mémotexte, image, vidéo, binaire...) 4 Go

HyperF i leSQL • www.pcsoft . fr

6

Page 7: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

ligne est reliée à d’autres lignes d’une table (on ne peut pas sup-primer un client si des commandes sont reliées à ce client).L’intégrité référentielle peut être définie par liaison, depuis l’édi-teur d’analyses.• Suppression en cascade:Si une ligne est supprimée dans une table, les lignes correspon-dantes dans les tables reliées sont également supprimées (cettecontrainte peut être activée ou désactivée, par relation)

Journalisation

Le journal est une table particulière dans laquelle sont mémoriséesautomatiquement toutes les opérations réalisées sur une ou plu-sieurs tables depuis un instant donné. Le journal contient l'historique de l'utilisation de la table, c'est-à-dire: • la ligne complète avant manipulation ou modification par l'utili-

sateur • la ligne complète après manipulation ou modification par l'utili-

sateur • l'auteur de la manipulation ou de la modification • la date et l’heure de la manipulation ou de la modification • la nature de l'opération effectuée: ajout, modification, suppres-

sion, lecture• l’identifiant du poste qui a effectué la modification • l’adresse IP du poste qui a effectué l'opération • le nom de l'application qui a effectué l'opération

Il est possible de réaliser les opérations suivantes à partir d'unjournal : • restaurer le contenu d’une table journalée en cas de perte ou de

destruction des données • restaurer le contenu d’une table journalée jusqu'à une certaine

date • retrouver l'auteur, la date et l'heure d'une opération réalisée sur

une ligne spécifique • conserver un historique de l'utilisation d’une table (par exemple

pour réaliser des statistiques)

Ces opérations peuvent se lancer en ligne de commande ou de-puis l’utilitaire WDJournal.

Transactions:

commit, rollback,

crash recovery

Une transaction est un ensemble d'opérations indissociables: soittoutes les opérations de la transaction sont réalisées, soit aucuneopération n'est réalisée. La gestion des transactions est le meilleurmoyen d'assurer la cohérence d'un ensemble d'écritures indisso-ciables sur différentes tables HyperFileSQL. Une transaction permet de s'assurer que des mises à jour effec-tuées sur une ou plusieurs tables de données se sont dérouléescorrectement.

Compression des données

«blob»

Les données de type «blob» (mémo texte ou binaire) peuvent êtrecompressées pour optimiser l’espace occupé sur le disque.L’espace occupé peut ainsi être très sensiblement réduit.

Compression des trames

Une «trame» est un paquet de données qui transite sur le réseau.HyperFileSQL, comme tous les SGBD, utilise des trames pour com-muniquer entre le poste client et le serveur.La vitesse de transfert des données d’un serveur dépend à la foisde la vitesse de circulation des trames sur le réseau, et de la taillede ces trames.En réseau local, la vitesse est tellement élevée que la taille de latrame a une importance relative.Par contre, pour un accès à distance (ADSL, 3G,...), la taille de latrame prend plus d’importance. Dans ce contexte, une forte ré-duction de la taille des trames engendre un gain de performancessensible.La compression des trames permet de réduire (jusqu’à 95% de ré-duction) la taille des paquets circulant sur le réseau, en appliquantautomatiquement un algorithme de compression aux données.Dans un contexte de communication à distance, surtout si la vi-tesse de connexion est lente, l’intérêt de compresser les tramesest grand. La vitesse en connexion à distance est améliorée. Les volumes de données transitant par le média de transmissionétant réduits, celà peut avoir un avantage avec les contrats factu-rant selon le volume de données.

Verrou de ligne

automatique

HyperFileSQL gère les verrous au niveau table et au niveau ligne.La gestion des verrous au niveau ligne permet d’assurer une meil-leure performance des accès.

Plusieurs databases sur

un même serveur

HyperFileSQL gère nativement la présence de plusieurs bases dedonnées sur un même serveur.Les bases de données sont isolées.Des droits spécifiques peuvent être définis sur chacune des bases.Cela évite de multiplier les serveurs.

HyperF i leSQL • www.pcsoft . fr

7

Page 8: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Reconnexion automatique

Cette fonctionnalité traite automatiquement l’aspect de la «dé-connexion» en cours d’utilisation entre client et serveur.Typiquement, ce problème se pose avec des matériels dont la

connexion avec le serveur n’est pas assurée enpermanence: les appareils mobiles en par-

ticulier (Wi-Fi, 3G,…). En connexion Wi-Fi par exemple, laliaison entre un appareil distant etle serveur peut s’interrompre un

court instant.Ce type de coupure peut intervenir éga-

lement sur des réseaux filaires classiques.Lorsque l’application est de nouveau connec-tée, il est utile de «reprendre» l’application làoù la communication a été interrompue, et queles buffers soient correctement renseignés.Grâce à la gestion automatique de la reprise,l’ensemble des «buffers» et des positions estmémorisé et réaffecté. L’application peut ainsi continuer à s’exécutersans erreur, comme si la connexion ne s’était

pas interrompue.Il est également possible de gérer les in-terruptions de connexion par program-

mation, ou d’exécuter des traitementssupplémentaires si on le souhaite.

Sauvegarde

Paramétrage d’une sauvegarde

La sauvegarde est une fonctionnalité importante d’une base dedonnées.Il est possible de sauver l’intégralité du serveur, ou uniquementune base de données, ou uniquement une sélection de tables,avec ou sans les index.HyperFileSQL gère la sauvegarde à chaud, différentielle.Une sauvegarde est transportable, par exemple d’un Windows àun Linux, d’une version Client/Serveur à une version Classic.Une sauvegarde peut être déclenchée depuis le Centre deContrôle (sauvegarde immédiate, sauvegarde planifiée), ou par

programmation, directement depuis l’application.La périodicité de la sauvegarde complète et de la sauvegarde dif-férentielle éventuelle peut être spécifiée (exemple: 1 complète parmois et 1 différentielle par semaine).L’exécution de procédures stockées avant et/ou après la sauve-garde permet de réaliser des traitements automatiques: envoid’email, copie de la sauvegarde sur un emplacement réseau,etc...)Le nombre de sauvegardes à conserver peut être spécifié.

La sauvegarde peut s’exécuter :• à chaud, sans déconnecter les utilisateurs• de manière transparente, sans perturber le fonctionnement des

applications.

Ordonnanceur intégré

(tâches planifiées)

HyperFileSQL dispose d’un ordonnanceur intégré qui permet dedéfinir et paramétrer des tâches planifiées.Une tâche ne consiste pas seulement à permettre d’exécuter uneprocédure stockée (UDF), mais permet également de déclencherune sauvegarde, ou de déclencher une optimisation automatiquedes performances.La définition s’effectue par le Centre de Contrôle ou par program-mation.L’ordonnanceur permet aux DBA de programmer l’exécution au-tomatique de tâches sur le serveur; il permet par exemple de réali-ser des traitements par lots.L’ordonnanceur est plus performant que l’exécution de com-mandes dans le planificateur de tâches de Windows ou dans le«cron» de Linux.Les tâches peuvent être exécutées à une date fixée, avec un ouplusieurs intervalles réguliers.Il est possible de créer, ajouter, modifier, activer, désactiver destâches programmées par programmation, ou depuis l’outil d’ad-ministration, sous réserve de posséder les droits adéquats.

Interface graphique et conviviale de l’ordonnanceur(tâches planifiées)

Exemple de paramètres possibles :• Tous les mois ou certains mois seulement• Tous les jours ou certains jours (le lundi par exemple, ou le 4 de

chaque mois)

HyperF i leSQL • www.pcsoft . fr

8

Page 9: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

• A heure fixe ou toutes les n heures et/ou n minutes.• Nombre de fois où la tâche doit être exécutée (10 fois par

exemple, ou à l’infini).

Réplication universelle

La réplication universelle fonctionne quelles que soient les basesde données utilisées. Il est par exemple possible de répliquer desdonnées HyperFileSQL entre elles, ou avec des données Oracle ouprovenant de n’importe quelle autre base de données.La réplication peut être unidirectionnelle ou bi-directionnelle, etpeut s’effectuer selon différents médias: ordinateurs connectés auréseau, clé USB, Internet, GPRS, 3G...

Une réplication se définit facilement à l’aide de l’assistant de répli-cation, ou par programmation.

Réplication déconnectée

Le mode de «réplication déconnectée» permet à une réplicationde se gérer de façon autonome. La réplication s’effectue sans connexion permanente au serveurcontenant l’autre base de données.Le principe est simple: le réplica est envoyé sur le serveur de répli-cation (par Internet, via une clé USB,...). La liaison avec le serveur est ensuite inutile.

La réplication «déconnectée»

Cluster

(ferme de serveurs)

Grâce à la fonctionnalité de cluster, un ensemble de serveurs phy-siques apparaît comme un serveur unique aux clients.La défaillance éventuelle d’un serveur physique ne provoque pasde défaillance des accès à la base de données (haute disponibilité,tolérance aux pannes).Les serveurs se répliquent automatiquement les uns les autres entemps réel.La charge d’accès lecture est répartie sur l’ensemble des serveurs(répartition de la charge en lecture).On peut ajouter et supprimer des serveurs à chaud.En cas de crash d’un serveur, il se re-synchronisera automatique-ment au démarrage.Lorsqu’un utilisateur est connecté à un serveur qui défaille, l’appli-cation ne sera pas déconnectée, et sera automatiquement recon-nectée à un serveur valide (basculement automatique).Le cluster est également très utile pour les infrastructures SaaS.

Modification Automatique

des Données sur chaque

site (SSD)

Quel informaticien, quel DSI n’a pas pesté contre le temps perduà écrire ces fameuses «moulinettes» (scripts) de tables pour ajou-ter ou agrandir une colonne ou un index à une table existante,pour changer un type de données dans une colonne ?Le problème est encore plus complexe quand de nombreuses (etsouvent différentes) versions de l'application sont déployées: ilfaut en plus vérifier la version utilisée de la base de données. L'écriture de moulinettes (scripts) est toujours délicate, car ellemodifie des données.Avec HyperFileSQL tout cela appartient au passé !HyperFileSQL gère de manière transparente l’évolution des struc-tures (schémas) de données grâce à la technologie SDD (synchro-nisation du schéma des données). Si par exemple une colonne voit sa taille modifiée, ou si une co-lonne est rajoutée, ou encore si le type des données contenueschange (entier vers réel par exemple) HyperFileSQL mettra à jourautomatiquement les données des tables concernées.Un historique de 100 versions est géré. Finies les «moulinettes» ! Finis les scripts ! Finis les «Alter table»hasardeux et insuffisants !La procédure de mise à jour, qui sera installée et exécutée auto-matiquement avec la mise à jour de votre application, est généréeautomatiquement.

HyperF i leSQL • www.pcsoft . fr

9

N’importe quelle base:HyperFileSQL, Oracle, SAP,AS/400, MySQL, mobile...

N’importe quel média:sur place, par réseau,par modem, via Inter-net, Wifi, GPRS...

N’importe quelle base:HyperFileSQL, Oracle,AS/400, MySQL, mobile...

Page 10: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

HyperF i leSQL • www.pcsoft . fr

10

SDD: Mise à jour automatique du schéma de données(également appelée Modif. Auto.)

Le SDD (synchronisation du schéma des données) effectue auto-matiquement :• La comparaison et synchronisation automatique de la base et

des données par rapport au schéma à obtenir • L’ajout, suppression, renommage de colonne • Le changement de type, de taille • L’ajout/suppression de clé/index, Ajout/suppression de

contraintes• L’ajout/suppression de triggers, de procédures stockées.

Le SDD peut également être lancé par ligne de commande.Notez qu’il n’est pas nécessaire d’utiliser d’autres outils de gestionde script pour réaliser ces tâches.Notez également que le SDD fonctionne quelles que soient lesversions du schéma des bases cibles: le SDD fonctionne immédia-tement sur une version n-3 par exemple.

Cette fonctionnalité de SDD peut s’exécuter :• à chaud, sans déconnecter les utilisateurs• de manière transparente, sans perturber le fonctionnement des

applications.

Lien avec les autres bases

de données

Il est bien entendu possible d’utiliser HyperFileSQL en parallèleavec d’autres bases de données. D’ailleurs, la plupart des S.I. utili-sent plusieurs SGBD hétérogènes.Une même application peut utiliser à la fois et simultanément unebase HyperFileSQL et d’autres bases de données.HyperFileSQL permet également l’import et l’export facile de don-nées avec d’autres bases de données.

SÉCURITÉL’intégration, la gestion automatique des verrous, le Centre deContrôle,... assurent par leur seule existence une grande sécuritéd’utilisation.

Des fonctionnalités spécifiques à la sécurité sont également dispo-nibles.

Droits d’accès :

authentification pour

établir la connexion

Le serveur dispose d’un système d’authentification des utilisa-teurs.Il vérifie qu’un utilisateur est autorisé à se connecter, et ensuitequ’il a les droits suffisants pour exécuter ses requêtes: par exem-ple droit de supprimer des lignes pour exécuter une requête desuppression.Le réglage des droits est très fin: au niveau du serveur, de la basede données ou de la table.Il s’effectue par programmation ou par une interface conviviale.Les mots de passe ne sont pas sauvés en texte clair sur le serveur:c’est une version hashée qui est sauvée par sécurité.Il est possible de définir une période d’expiration des mots depasse.Il est possible de définir des groupes d’utilisateurs.

Centre de Contrôle HyperFileSQL: définition des droits

Au niveau du serveur :• Droit de supprimer ou ajouter des utilisateurs ou groupes• Droit de voir les utilisateurs et les groupes• Droit de créer une base de données• Droit de changer les droits• Droit d'arrêter le serveur• Droit de changer son propre mot de passe• Droit de déconnecter les postes client• Droit d'envoyer des messages aux postes client• Droit de paramétrer le serveur• Droit de paramétrer la priorité des utilisateurs• Droit de réaliser des sauvegardes• Droit de paramétrer les tâches planifiées• Droit de consulter les statistiques d'activité et les logs du serveur.

Au niveau d’une base de données :• Droit d'ajouter de nouvelles lignes dans une table de données• Droit de bloquer les tables ou les lignes d’une table• Droit de changer les droits• Droit de modifier les règles d'intégrité sur une table• Droit de modifier le propriétaire d'un élément• Droit de se connecter au serveur (connexion cryptée et non

cryptée ou connexion cryptée uniquement)• Droit de créer une table par programmation• Droit de brancher et de débrancher la gestion des doublons

Page 11: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

• Droit de lire les lignes d’une table• Droit de lancer une ré-indexation ou un calcul de statistiques sur

une table• Droit de lancer une modification automatique des tables (SDD) • Droit de modifier les lignes d’une table• Droit de supprimer les lignes d’une table• Droit de supprimer une base de données• Droit de supprimer une table par programmation • Droit de brancher et de débrancher la gestion de l'intégrité• Droit de bloquer l'accès à une base de données • Droit d'exécuter des procédures stockées et/ou des commandes

WLangage dans les requêtes• Droit de paramétrer les procédures stockées• Droit de déboguer les procédures stockées• Droit de modifier les triggers• Droit de réaliser des sauvegardes.

Au niveau d’une table :• Droit d'ajouter de nouvelles lignes dans une table • Droit de bloquer les tables ou les lignes d’une table • Droit de changer les droits• Droit de modifier les règles d'intégrité sur une table• Droit de modifier le propriétaire d'un élément• Droit de brancher et de débrancher la gestion des doublons• Droit de lire les lignes d’une table• Droit de lancer une ré-indexation ou un calcul de statistiques sur

une table• Droit de lancer une modification automatique des tables (SDD)

sur une table• Droit de modifier les lignes d’une table• Droit de supprimer les lignes d’une table• Droit de supprimer une table par programmation.

Injection SQL impossible

L’utilisation du générateur de fenêtres de WINDEV et du généra-teur de pages de WEBDEV, par la définition des champs de saisiequ’il génère automatiquement en fonction du schéma des don-nées, rend quasiment impossible les attaques par «injection decode SQL», et ce de manière automatique.Les données que l’utilisateur final saisit sont vérifiées automati-quement, en temps réel dès la saisie, et ne sont pas transmises àl’application si elles sont erronées ou incohérentes.

Connexions cryptées

La connexion entre le client et le serveur peut être cryptée.Pour définir un haut niveau de sécurité, il est possible d’interdireles connexions non cryptées au serveur.

Cryptage des données

L’accès aux données peut être sécurisé, et les données elles-mêmes peuvent être sécurisées.L’ouverture de la table peut nécessiter un mot de passe.Les données elles-mêmes peuvent être cryptées. Plusieurs modes de cryptage sont gérés: • standard sur 128 bits • RC5 12 boucles sur 128 bits • RC5 16 boucles sur 128 bits Le mode et la clé de cryptage peuvent être définis :

• par programmation • dans l’éditeur de schéma (d’analyse).Si une personne malveillante se procure un fichier de donnéescrypté (vol, copie, récupération sur une machine recyclée, sur unemachine perdue,...), elle ne pourra pas l’exploiter.

OUVERTUREHyperFileSQL est ouvert à toutes les technologies, et s’insère faci-lement dans tout S.I. existant.

Pilote ODBC

La fourniture du pilote ODBC permet à des applications tiercesd’accéder aux données stockées sur un serveur HyperFileSQL,comme par exemple PHP, Python, Ruby, Access…

Provider OLE DB

La fourniture du pilote OLE DB (en mode lecture et écriture), per-met à des applications tierces d’accéder aux données stockées surun serveur HyperFileSQL, comme par exemple C#, ASP.Net, Crys-tal Reports, Business Object, PHP, Excel , ...

Importation de base

L’outil WDCONVER (livré en standard) permet d’importer desbases de données Oracle, SQL Server, MySQL, ...L’import du schéma des données est automatique.L’import de données depuis les formats texte (séparateurs person-nalisables: tab, espace…), CSV, XML, est également facile.

LIEN AVECWINDEV, WEBDEV,WINDEV MOBILE

Accès natif WINDEV et

WEBDEV

WINDEV, WEBDEV et WINDEV Mobile sont des Ateliers de GénieLogiciel. WINDEV est l’AGL N°1 en France.L’accès à HyperFileSQL est «natif» WINDEV et WEBDEV, ce qui si-gnifie que les performances d’accès (lecture, écriture) sont optimi-sées.

HyperF i leSQL • www.pcsoft . fr

11

Page 12: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Les schémas de données HyperFileSQL sont également directe-ment et immédiatement reconnus par les environnements deWINDEV et WEBDEV, et bénéficient donc des automatismes et as-sistants de ces environnements: création automatique d’IHM, dechamps, complétion sous l’éditeur de code...Le databinding est supporté, en visuel sous l’environnement etpar programmation.

Assistance automatique

Dans une application WINDEV, l’assistance à l’utilisateur final estautomatique dans les cas d’erreur suivants: • détection des accès concurrents non protégés• doublons • non respect des contraintes d’intégrité • mot de passe incorrect• déconnexion • blocage.Si une de ces erreurs se produit, l’application affiche automatique-ment une fenêtre d’assistance adaptée.

Ici, 2 utilisateurs tentent de modifier en même temps lemême champ! Une fenêtre s’ouvre automatiquement et de-mande quelle valeur prendre. Il n’y a rien à programmer.

Curseur en WINDEV et

WEBDEV

La programmation native sous WINDEV et WEBDEV est grande-ment facilitée par un ensemble d’automatismes et d’assistantstrès évolués.Les relations entre les tables sont détectées automatiquement.L’accès à un champ de la base de données se définit facilementavec une syntaxe claire et intuitive: nom de table, nom de colonne(client.nom).Les assistances à la saisie de code sont permanentes et facilitentune saisie sans faute de frappe, sans avoir à rechercher un nom.

Aide à la performance,

Tuning, audit

Le profiler et l’Audit dynamique permettent d’analyser les perfor-mances d’une application, et par là même de vérifier que lesaccès aux données sont programmés de manière optimale.Le tuning permet d'optimiser les requêtes, de vérifier les index, lamise en place des statistiques, la surveillance du serveur, decontrôler la mémoire, l'utilisation du CPU, de l'espace disque, desconnexions, etc... La fonction SQL «Explain» permet d’anayserl’ordre d’exécution d’une requête.

Multicontexte

Il est possible de manipuler à un instant donné, plusieurscontextes et plusieurs connexions différents sur une même base.

Générateur de fenêtres

et d’IHM à partir des

schémas de table

Les IHM générées tiennent compte de la définition de la table. Par exemple si une colonne est de type numérique, avec une lon-gueur maximum de 8, seules les données de ce type seront auto-risées à la saisie. Il sera impossible de saisir du texte, ou un nombre de taille supé-rieure.

3 exemples de fenêtres créées avec WINDEV

HyperF i leSQL • www.pcsoft . fr

12

Page 13: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Des contrôles sophistiqués, prêts à l’emploi et à être personnaliséssont disponibles par simple glisser/déplacer:

• champ de saisie formaté • champ d'affichage (libellé)• onglets • listes déroulantes • combo box • combo auto-alimentée• images • images animées • ascenseurs • boutons graphiques (icones) • boutons graphiques animés • boutons texte • boutons poussoir • boutons temporisés• interrupteurs • sélecteurs mono et multi-colonnes• tableaux • listes graphiques • listes arborescentes (tree-view) • table hiérarchique• tiroir • champs OLE• champs ActiveX • zones de clicage • boutons «spin» • champs avec ombre floue • potentiomètres • champs HTML • barre d’icones • formes géométriques • splitter (séparateur) • liste graphique• barre d’état • Web caméra• RTF • zones répétées• jauge • boite à outils• graphe • codes-barres• carrousel • calendrier• ...

LES OUTILSAdministration : centre de

contrôle HyperFileSQL

Un onglet du Centre de Contrôle HyperFileSQL

Le Centre de Contrôle HyperFileSQL est un outil d’administrationindispensable disposant d’une interface graphique intuitive et er-gonomique.Le Centre de Contrôle HyperFileSQL permet d’effectuer de nom-breuses tâches, depuis un poste du réseau ou depuis Internet,telles que :

• Gestion des bases de données • Gestion de la taille des données • Arrêt/démarrage des différentes instances de serveurs• Visualisation des informations spécifiques au serveur, à la base,

aux tables • Désinstallation de serveur HyperFileSQL • Affichage de la liste des connexions en cours• Possibilité de terminer/interdire des connexions.• Envoi de messages aux utilisateurs• Paramétrage de l’emplacement des bases de données, des jour-

naux, activation et emplacement des logs, des statistiques d’ac-tivités,

• Définition du port de connexion au serveur,• Définition du port pour le débogage à distance, • Edition des comptes• Gestion des transactions en cours, rollback de transaction • Gestion des tâches planifiées • Réalisation de sauvegardes • Gestion des sauvegardes • Tuning à chaud : taille du cache, activation des logs etc…• Création, suppression, import de bases de données.• Explorateur de bases de données • Exécution de requêtes • Sauvegarde et restauration des données,• Visualisation de la structure des tables.• Automatisation de fonctions courantes.• Monitoring.• Gestion des utilisateurs et groupes d’utilisateurs, ainsi que de

leurs droits • Gestion des utilisateurs connectés • Déconnexion d’utilisateurs• Edition des statistiques précises d’utilisation du serveur: postes,

requêtes, journaux, logs, paramètres... • Visualisation des blocages de lignes• ...

Administration à chaud

De nombreuses tâches de maintenance peuvent s’effectuer àchaud, sans avoir à déconnecter les utilisateurs, et sans que ceux-ci ne soient gênés dans l’utilisation de leurs applications, quicontinuent à lire et écrire les données pendant ces phases:• SDD «Modif Auto» à chaud • Réindexation à chaud • Optimisation automatique des performances à chaud• Changement de mot de passe à chaud • Sauvegarde.

Modéliser une base de

données

La définition d’un schéma de base de données s’effectue facile-ment à l’aide du puissant éditeur visuel livré. De nombreux assistants vous guident.L’édition visuelle du modèle du schéma (création, suppression,modification des tables, des colonnes, des relations, descontraintes, des index, des triggers…) permet de définir unschéma de base de données sans avoir à écrire de code SQL.L’éditeur visualise de manière graphique l'organisation des don-nées et des traitements.

HyperF i leSQL • www.pcsoft . fr

13

Page 14: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Un schéma de données (une analyse)

L’éditeur sait importer des schémas depuis des basesHyperFileSQL, SQL Server, Oracle, OLE DB, …Un import automatique de schémas existants peut être effectué.

Le dossier du schéma de base de données peut être édité à la de-mande (format papier, HTML, PDF, Word, OpenOffice).

Pages extraites d’un dossier automatique

Comment créer un schéma

de données (une analyse) ?

Créer un schéma de données (une analyse) est très facile: un as-sistant puissant vous guide.Il suffit de définir la structure des tables constituant le schéma(l’analyse); les colonnes sont définies, ou récupérées du diction-naire des données. On indique le type des colonnes, le type de clé (index)...Toute nouvelle colonne créée vient alimenter le dictionnaire desdonnées.On définit ensuite les relations entre les tables. Pour relier des tables, il suffit de tracer un lien avec la souris! L’assistant pose des questions en langage naturel pour déterminerla nature des relations.L’assistant demande également si la vérification de l'intégrité réfé-rentielle doit être automatique ou pas.

Définition assistée des relations (liaisons)

L’assistant demande alors s'il doit générer les éventuelles tables derelation nécessaires, ou s'il doit utiliser des tables existantes.L’assistant demande enfin l’intitulé des relations: le schéma est dé-fini.

L’éditeur visuel de schéma gère également :• La rétro analyse depuis un serveur• La modélisation logique ou physique• L’édition des connexions• La comparaison de schémas• L’historique des schémas• La génération de scripts DDL• L’export du modèle du schéma sous format d’image vectorielle.

UML

Le diagramme de classes UML

WINDEV et WEBDEV gèrent en standard les 9 modèles UML.En particulier, le diagramme de classes peut être généré automati-quement à partir du schéma de la base de données.La programmation en mode 3-tier est ainsi énormément facilitéepar un mapping objet-relationnel automatique: les classes sontautomatiquement générées pour implémenter la logique métierpropre à l’application, ainsi que la mise à jour des données desobjets vers les tables, et réciproquement.

HyperF i leSQL • www.pcsoft . fr

14

Page 15: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Outil de reporting (logi-

ciel «Etats & Requêtes»)

Un état créé avec Etats & Requêtes

Le logiciel «Etats & Requêtes» est un éditeur d’états que vouspouvez diffuser librement, gratuitement et de manière illimitée àvos utilisateurs finaux, pour toute application réalisée en WINDEVou en WEBDEV.Cet éditeur d’états est totalement interfacé nativement avecHyperFileSQL, et permet la création très facile d’états sophistiquésutilisant des données stockées (entre autres) dans des basesHyperFileSQL.PDF est géré en standard, tout comme les fonds de page, lescodes-barres, les étiquettes... et tout ce qui est nécessaire !

Depuis l’éditeur d’états, l’export vers Word, Excel, OpenOffice, l’envoi d’un mail, etc... sont automatiques

HyperF i leSQL • www.pcsoft . fr

15

Quelques clics suffisent à créerune requête, et à la vérifier enlangage naturel.

Editeur de requêtes

La création des requêtes s’effectue en langage SQL ou en L5GWLangage. Les requêtes peuvent être directement saisies, ou générées parl’éditeur de requêtes (Etats & Requêtes), fourni en standard avecWINDEV et WEBDEV, et librement diffusable auprès des utilisa-teurs finaux des applications que vous avez créées.L’éditeur de requêtes permet également d’optimiser la description(le schéma) des bases de données, en détectant et définissantles index nécessaires aux performances d’exécution des re-quêtes créées.L’éditeur de requêtes génère les requêtes à la fois en SQL eten langage naturel, afin de vérifier qu’elles correspondentbien à l’opération souhaitée ! Il n’y a ainsi pas derisque d’erreur.La requête est également générée sous formeschématique (graphique animé).Le mode opératoire pour créer une re-quête est simple: choisissez les co-lonnes à intégrer, les conditions de

sélection à l’aide de l’assistant, et la requête est générée en codeSQL optimisé.L’éditeur effectue également la rétro-analayse de requêtes exis-tantes.Le résultat d’une requête peut être une fenêtre de visualisation,un état imprimé, ou une table HyperFileSQL. Une requête peut utiliser comme source le résultat envoyé par uneautre requête.

Afficher tous les NumCommande, NumCommandeClient, Date-

Commande, NumClient, ModeRèglement et DateFacturation

tels que DateFacturation est égal à ‘DateFacturation’ ET COMMANDE.TotalTTC est supérieur ou égal à MontantTTC ET HISTORIQUE.Réceptionniste est égal à ‘Receptionniste’ OU PRODUIT.QteMini est égal à QuantiteMini ET ModeRèglement contient ‘ModeReglement’

ET COMMANDE.Observations contient ‘Observation’ .

Page 16: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Un état peut être dirigé vers différentes cibles

Les formats de codesbarres supportés sont: UPCA, UPCE, EAN13,EAN8, EAN128, CODE128, CODE39, CODE93, CODE11,CODE128, Intervaled 2 of 5, CODABAR, CB_MSI, Datamatrix,PDF417, QR code...

RAD: pour générer les

fenêtres et les pages

Une page Web générée par WEBDEV

Le RAD de WINDEV, WEBDEV et WINDEV Mobile génère égale-ment les fenêtres et pages, ainsi que les champs, en paramétrantles contrôles de saisie en fonctions des informations contenuesdans le schéma des données (analyse): champ obligatoire, taillemaximale, types de données acceptées, vérification de bornes,...

WDMAP: visualiseur de

données

WDMAP permet de visualiser, éditer et modifier les donnéesd’une table.WDMAP est très utile en phase de test et de débogage.WDMAP permet de filtrer, de trier les données, d’effectuer des ex-ports immédiats (vers Word, Excel, OpenOffice, XML,...).

Outil de comparaison de

données : WDHFDiff

L’utilitaire WDHFDIFF permet de comparer :• la structure de 2 tables• les données de 2 tables. Cela peut être très utile en phase de mise au point.

Robot de surveillance

Le robot de surveillance (librement diffusable avec vos applica-tions) permet de sécuriser l’exploitation des serveurs. Le robot surveille en permanence, et détecte immédiatement leséventuelles connexions impossibles avec le serveur.Le serveur alerte, au choix, par :• envoi d’un message paramétrable d’eMail aux adresses indi-

quées (jusqu’à 20 adresses)• message envoyé à une application spécifique (messagerie in-

terne,…)• message envoyé à la messagerie intégrée• écran de contrôle (alerte visuelle et/ou sonore)• lancement d’une procédure WLangage• programme tiers (ce programme tiers peut par exemple effec-

tuer l’envoi d’un message paramétrable par SMS aux numérosindiqués).

Bien entendu, il est possible de choisir une combinaison de cesalertes.Parmi les paramètres de surveillance que l’on peut spécifier, voustrouverez :• la fréquence: effectuer le test tous les combiens, de 2 minutes à

1 jour• la répétition: en cas de non réponse de l’élément surveillé, ré es-

sayer le test combien de fois et après quel délai avant de déclen-cher l’alerte

• le texte du message à envoyer• le média du message (SMS, eMail, …).

SILO: superviseur d’infra-

structure logicielle

Le SILO permet de recenser les accès de toutes les applicationsWINDEV et de tous les sites WEBDEV à toutes les ressources ré-seau, dont les bases de données HyperFileSQL.

HyperF i leSQL • www.pcsoft . fr

16

Page 17: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Le SILO permet d’analyser l’évolution des accès aux bases de don-nées au cours du temps, de savoir quelles applications et quelspostes accèdent à une base de données, ...Des statistiques précises sont disponibles à tout moment.

PROGRAMMA-TION: SQL ETWLANGAGE

La programmation simple

et puissante

La programmation de la base de données HyperFileSQL est à lafois facile et puissante.Cette programmation peut s’effectuer en SQL et/ou en L5GWLangage.La programmation par le langage SQL est une programmationuniversellement connue.La programmation avec le langage de 5° génération WLangagepermet la programmation évoluée et puissante de curseurs.Les automatismes avec les applications et sites développés enWINDEV et WEBDEV sont alors très forts.

RAD: pour générer le

code

Le code peut être généré à la demande par WINDEV et WEBDEVen utilisant la fonctionnalité de RAD, ou par les nombreux assis-tants disponibles dans ces environnements.Le code généré peut ensuite être modifié.Le RAD supporte le concept de «pattern», qui permet de définirsoi-même le code qui sera généré.

Liste des ordres SQL

supportés

Voici la liste des fonctions SQL supportées (cette liste n’est pasexhaustive). Le détail de chaque fonction SQL n’est ici pas indiqué.

ABS ACOS ADD_MONTH ALLAND ANY AS ASCASCII ASIN ATAN ATAN2AVG BETWEEN BIN BOTTOMCASE CAST CBRT CEILCEILING CHAR_LENGTH CHARACTER_LENGTH COALESCECONCAT COS COUNT CREATE TABLEDECODE DEGREES DELETE DESCDISTINCT DIV DROP TABLE ELTEXISTS EXP FIELD FLOORFROM FULL OUTER JOIN GREATEST GROUP BYHAVING HEX IN INNER JOININSERT INSTR INTO IF NULLIS NULL LAST_DAY LAST_INSERT_ID LCASELEAST LEFT LEFT OUTER JOIN LENLENGTH LIKE LIMIT LNLOG LOG10 LOWER LPADLTRIM MAX MD5 MIDMIN MOD MONTHS_BETWEEN NEW_TIMENEXT_DAY NOT NVL OCTOCTET_LENGTH ON OR ORDER BYPATINDEX PI POSITION POWERRADIANS RANDOM REPEAT REPLACEREVERSE RIGHT RIGHT OUTER JOIN ROUNDRPAD RTRIM SELECT SETSHA SHA1 SIGN SINSOME SOUNDEX SOUNDEX LIKE SOUNDEX2SOUNDEX2 LIKE SPACE SPLIT_PART SQRTSTDDEV STDDEV_POP STDDEV_SAMP STRING_AGGSUBSTR SUBSTRING SUM SYSDATETAN TOP TRANSLATE TRIMTRUNC UCASE UNHEX UNICODEUNION UPDATE UPPER UUIDVALUES VAR_POP VAR_SAMP VARIANCEWHERE XOR

Les requêtes SQL de type «Select» acceptent de nombreusesfonctions WLangage en paramètres, ce qui permet d’affiner faci-lement une sélection.Les fonctions WLangage acceptées sont: Abs Age AnsiVersOem AnsiVersUnicodeArcCosinus ArcSinus ArcTang ArrondiAsc Caract ChaîneCompare ChaîneConstruitChaîneFormate ChaîneOccurrence ChaîneVersDate ChaîneVersDuréeChaîneVersUTF8 Complète ComplèteRep CompresseConstruitEntier Conversion Cosinus CoTangCouleurLuminosité CouleurSaturation CouleurTeinte CrypteDateDifférence DateDuJour DateEstValide DateHeureDifférenceDateHeureLocaleVersUTC DateHeureUTCVersLocaleDateSys DateValide DateVersChaîne DateVersEntierDateVersJour DateVersJourEnLettre DateVersMoisEnLettreDateVersNuméroDeSemaine DDECR DécomplèteRepDécompresse Décrypte DonneGUID DroiteDuréeVersChaîne EmailVérifieAdresse EntierVersDate EntierVersHeureEntierVersJour EntierVersJourEnLettre EntierVersMoisEnLettreEntierVersNuméroDeSemaine EnvironnementDOS EstImpairEstNumérique EstPair ETBinaire ExeInfoExp ExtraitChaîne fAttributLectureSeulefChargeTexte fCheminCourt fCheminLong fCompactefCompare fCopieFichier fCréeLien fCryptefDate fDateHeure fDécompacte fDécryptefDéplaceFichier fDisqueInfo FenEnSaisie FenExtPosHFenExtPosV FenIntPosH FenIntPosV fEspaceDisquefExtraitChemin fFichierExiste fHeure fNomCourtfNomLong fRepAttribut fRepCopie fRepCréefRepDroit fRépertoireExiste fRépertoireTemp fRepParentfRepSupprime fRepTaille fSauveTexte fSéparateurfSupprime fTaille fTailleDécompacté fTailleDisquefTypeDisque Gauche Hasard HDescribeFieldHDoublet HeureDifférence HeureEstValide HeureSysHeureValide HeureVersChaîne HeureVersEntier HInfoFieldHListField HRetrieveField HTMLVersTexte HToFieldHUnlockRecord iDonneIdentifiant InfoExe INIEcritINILit InitHasard Inverse LanceAppliLn Log Maintenant MajusculeMax Milieu Min MinusculeNetAdresseMAC NetIPVersMAC NetMACVersIP NONBinaireNumériqueVersChaîne NuméroDeSemaine OemVersAnsiOUBinaire OuExBinaire OUExclusifBinaire Pâques

HyperF i leSQL • www.pcsoft . fr

17

Page 18: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

PartieDécimale PartieEntière Phonétique PoidsFaiblePoidsFort Position PositionOccurrence PuissanceRacine RegistreCherche RegistreCléSuivante RegistreCréeCléRegistreEcrit RegistreExiste RegistreListeValeur RegistreLitRegistrePremièreSousClé RegistreSupprimeCléRegistreSupprimeValeur RegistreTypeValeur RemplaceRépète RéseauConnecte RéseauDéconnecte RéseauNomDomaineRéseauNomRep RéseauUtilisateur RVB RVBBleuRVBRouge RVBVert SansAccent SansEspacesCalculeCrc16 sCalculeCrc32 Sinus SourisPosHSourisPosV SysCouleur SysCouleurRes SysEnvironnementSysEspace SysInstance SysNomExe SysRepSysVersionWindows SysXRes SysYRes TailleTailleCommune TailleVersChaîne Tang TermineAppTSL UnicodeVersAnsi URLDécode URLEncodeUTF8VersChaîne UUDécode UUEncode ValVérifieExpressionRégulière VersChaine VersionWindows

Liste des ordres

WLangage

Les ordres WLangage permettent de programmer des curseurs,ou même de programmer tous les traitements si vous le désirez.La programmation en L5G WLangage est très puissante et très in-tuitive.Par exemple, la recherche d’une ligne (d’un enregistrement), ettous les traitements attachés (ouverture de table, affection de va-riables,...) s’effectuent en une seule de ligne de code, très simple,très puissante:hLitRecherche(CLIENT,NOM,"DUPONT")

Les programmes source sont limpides, faciles à écrire et surtoutfaciles à maintenir; cela limite les erreurs, et rend les applicationsdéveloppées plus fiables, plus rapidement.L'utilisation d'instructions en français permet une meilleure maî-trise: le code est auto-commenté ! (anglais disponible)L'ordre hLitRecherche sera compris par tous les développeurs,même les novices !Il est possible également de programmer en anglais: l'ordre de-vient hReadSeek.

Autre exemple, la création d’une table s’effectue en 1 ligne decode, sans script: hCréation.

Liste non exhaustive des fonctions du WLangage (L5G utilisépar WINDEV, WEBDEV et WINDEV Mobile), avec résumé deleur action.Ici liste en français; chaque fonction existe également en anglais.

EcranVersFichier Initialise automatiquement : - la valeur mémoire des champs d’une table (des rubriquesd'un fichier) avec la valeur des contrôles de la fenêtre ou de lapage. - la valeur des variables WLangage avec la valeur des contrôlesde la fenêtre ou de la page.

EcranVersSource Initialise automatiquement : -la valeur mémoire des champs d’une table avec la valeur ddescontrôles de la fenêtre ou de la page. - la valeur des variables WLangage avec la valeur des contrôlesde la fenêtre ou de la page.

FichierVersEcran Initialise automatiquement les contrôles d'une fenêtre oud'une page avec : - les valeurs des champs associés à la ligne en cours de latable (du fichier de données) - les valeurs des variables WLangage associées.

SourceVersEcran Initialise automatiquement les contrôles d'une fenêtre oud'une page avec : - les valeurs des champs associés à la ligne en cours de latable. - les valeurs des variables WLangage associées.

EspaceSignificatif Ajoute ou supprime les espaces situés à droite d'un champtexte lors de sa lecture.

HActiveFiltre Active le filtre précédemment créé pour la table spécifiée.

HActiveFiltreAuto Active un filtre automatique sur les tables reliées lors du par-cours d'un fichier XML.

HActiveTrigger Réactive un trigger précédemment désactivé avec la fonctionHDésactiveTrigger.

HActiveTriggerServeur Ré-active un trigger serveur précédemment désactivé.

HAjoute Ajoute la ligne présente en mémoire dans la table.

HAjouteGroupe Ajoute un groupe d'utilisateurs.

HAjouteLiaison Ajoute une règle d'intégrité entre deux tables sur le serveur.

HAjouteTâche Ajoute une tâche planifiée sur le serveur défini par laconnexion.

HAjouteUtilisateur Ajoute un utilisateur à une base de données.

HAlias Crée un alias logique d’une table ou annule tous les alias exis-tants.

HAnnuleAlias Annule un alias précédemment déclaré avec la fonction HAlias.

HAnnuleDéclaration Supprime une déclaration précédemment faite avec HDéclare,HDéclareExterne, HDécritFichier.

HAnnuleRecherche Annule le critère de recherche en cours.

HAnnuleSauvegarde Annule une sauvegarde en cours.

HArrêteServeur Arrête un serveur.

HAttacheMémo Associe un fichier à une colonne de type mémo binaire (blob).

HAvance Avance de plusieurs lignes dans la table, à partir de la positionen cours, selon une colonne spécifiée.

HBloqueFichier Bloque une table (un fichier) et restreint l'accès à cette table(ce fichier ) pour toutes les autres applications.

HBloqueNumEnr Bloque une ligne (un enregistrement) et restreint l'accès àcette ligne (cet enregistrement) pour toutes les autres applica-tions.

HChangeClé Change la clé (la colonne) de parcours.

HChangeConnexion Change la connexion à une base de données utilisée pour unetable.

HChangeLocalisation Modifie le mode de recherche des tables.

HChangeNom Modifie le nom physique d’une table.

HChangeRep Modifie le chemin d'accès à une table.

HChangeRepJnl Modifie le chemin d'accès à un fichier journal.

HChangeRepRpl Modifie l'emplacement de la description du réplica abonné (fi-chier RPL). Cette fonction doit être utilisée sur le poste abonné.

HChargeParamètre Lit un paramètre précédemment sauvegardé à partir d'une pro-cédure stockée grâce à la fonction HSauveParamètre.

HConnecte Redéfinit un ou plusieurs paramètres d'une connexion sur unetable spécifique ou sur un ensemble de tables.

HConnecteAccèsDistant Ouvre une analyse au format HyperFileSQL Classic via un accèsdistant.

HConstruitValClé Construit la valeur d'une clé composée (d’un index) pour réali-ser un filtre ou effectuer une recherche.

HConstruitValCléANSI Sous une plateforme UNICODE (pocket PC par exemple), per-met de construire la valeur d'une clé composée (index) pourl'enregistrer dans une table HyperFileSQL.

HConvert Convertit une valeur numérique en une chaîne binaire pour ef-fectuer une recherche sur une clé (un index) numérique.

HCopieEnreg Copie le contenu de l'enregistrement en cours (de la ligne encours) dans l'enregistrement en cours d'un autre fichier (dansla ligne en cours d’une autre table).

HCopieFichier Effectue une copie d’une table (d'un fichier) HyperFileSQL.

HCréation Crée à vide une table avec les index décrits.

HCréationSiInexistant Crée à vide une table (si la table n'existe pas) ou ouvre unetable (si la table existe déjà).

HCréeRéplicaAbonné Crée le fichier de description d'un réplica abonné (fichier Repli-caAbonne.RPL).

HCréeRéplicaMaître Crée le fichier de description d'un réplica maître (fichier Repli-caMaitre.RPL).

HCréeRéplicaTransportable Crée un fichier qui peut être utilisé pour répliquer les donnéesde la base de données en cours (pour envoi par email ou dis-quette par exemple).

HCréeVue Crée une vue HyperFileSQL.

HDateEnreg Renvoie la date et l'heure de la dernière écriture d'une lignedans uns table HyperFileSQL .

HDébloqueFichier Débloque une table (un fichier) précédemment bloquée avec lafonction HBloqueFichier.

HDébloqueNumEnr Débloque une ligne (un enregistrement).

HDéclare Déclare une description de table (présente dans un autreschéma, une autre analyse) dans le projet en cours.

HDéclareExterne Importe temporairement dans le schéma en cours, l'analyse encours la description d’une table à partir d'une tableHyperFileSQL existante.

HyperF i leSQL • www.pcsoft . fr

18

Page 19: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

HDéconnecteClient Affiche un message sur le(s) poste(s) Client, et déconnectel'application.

HDécritConnexion Décrit une connexion temporaire.

HDécritFichier Décrit une table (un fichier de données) temporaire.

HDécritIndexFullText Décrit un index full-text dans une table créée par programma-tion.

HDécritLiaison Décrit une relation (une liaison) temporaire entre deux table.

HDécritRubrique Décrit une colonne (une rubrique) d'une table temporaire.

HDécritTrigger Ajoute ou modifie un trigger sur une table HyperFileSQL.

HDécritTriggerServeur Ajoute ou modifie un trigger serveur.

HDémarreServeur Permet de démarrer un serveur (utilise MantaManager).

HDernier Positionne sur la dernière ligne d’une table.

HDésactiveFiltre Désactive temporairement un filtre sur une table (une vue ouune requête).

HDésactiveFiltreAuto Désactive un filtre automatique sur les fichiers reliés lors duparcours d'un fichier XML. Ce filtre a été activé grâce à la fonc-tion HActiveFiltreAuto.

HDésactiveTrigger Désactive un trigger.

HDésactiveTriggerServeur Désactive un trigger Serveur HyperFileSQL Client/Serveur.

HDétruitTrigger Détruit un trigger.

HDétruitTriggerServeur Détruit un trigger serveur. Ce trigger serveur ne sera plus utili-sable.

HDétruitVue Détruit une vue précédemment créée.

HEcrit Écrit une ligne dans une table sans mettre à jour les index cor-respondants.

HEnDehors Permet de savoir si la ligne sur laquelle on veut se positionnerest en dehors de la table, du filtre, de la vue ou de la requête.

HEnregistrementVersXML Récupère la structure et la valeur de la ligne (l'enregistrement)en cours et les exporte dans une chaîne de caractères au for-mat XML.

HEnvoieMessageVersClient Affiche un message sur le(s) poste(s) Client.

HErreur Renvoie le numéro de la dernière erreur déclenchée par le mo-teur HyperFileSQL.

HErreurBlocage Permet de tester si une erreur de verrou (blocage) est surve-nue.

HErreurDoublon Permet de tester si une erreur de doublons est survenue.

HErreurEtatModification Renvoie l'état d'une ligne lors d'un conflit de modification.

HErreurInfo Renvoie une information détaillée sur la dernière erreur dé-clenchée par le moteur HyperFileSQL.

HErreurIntégrité Permet de tester si une erreur d'intégrité est survenue.

HErreurModification Renvoie la valeur d'un champ lors d'un conflit de modification.

HErreurMotDePasse Permet de savoir si une erreur due à un mot de passe erroné aété rencontrée sur la table.

HEtat Permet de connaître l'état d’une ligne.

HEtatServeur Permet de connaître l'état d'un serveur.

HExécuteProcédure Exécute une procédure ou fonction stockée.

HExécuteRequête Initialise une requête créée sous l’éditeur de requêtes et dé-clare cette requête au moteur HyperFileSQL.

HExécuteRequêteSQL Initialise une requête écrite en langage SQL et déclare cette re-quête au moteur HyperFileSQL.

HExécuteVue Exécute une vue créée auparavant.

HExporteXML Exporte les lignes d'un fichier (HyperFileSQL ou OLE DB), d'unevue ou d'une requête dans un fichier XML.

HExtraitMémo Extrait le contenu d'une rubrique de type blob (mémo binaire)dans un fichier.

HFerme Ferme soit une table (un fichier), soit toutes les tables (tous lesfichiers) ouvertes.

HFermeAnalyse Ferme l'analyse en cours.

HFermeConnexion Ferme une connexion à une base de données

HFichierExiste Permet de savoir si une table (un fichier) existe.

HFiltre Définit et active un filtre sur un fichier, une vue ou une requête.

HFiltreCommencePar Définit et active un filtre de type "Commence par" sur unetable, une vue ou une requête. Le filtre de type "Commencepar" permet de sélectionner toutes les lignes commençant parune suite de caractères définie.

HFiltreComprisEntre Définit et active un filtre de type "Compris entre" sur unetable, une vue ou une requête. Le filtre de type "ComprisEntre" permet de sélectionner toutes les lignes comprisesentre deux valeurs données.

HFiltreIdentique Définit et active un filtre permettant de rechercher la valeurexacte d'un champ de type chaîne. Ce filtre peut être utilisé surune table, une vue ou une requête.

HFinInterditAccèsBaseDeDonnées Ré-autorise l'accès à une ou plusieurs bases de données ac-cessibles par une connexion.

HFinInterditModif Débloque une table qui a été bloquée par le même programme

avec la fonction HInterditModif.

HForceEcriture Force le système d'exploitation du poste sur lequel les tables(les fichiers de données) sont présentes à écrire les donnéesdirectement sur le disque.

HFusionneVue Crée une vue HyperFileSQL à partir de deux vues précédem-ment créées.

HGèreAccèsDistant Débranche temporairement l'accès distant pour accéder à destables HyperFileSQL Classic présentes en local.

HGèreCache Permet de paramétrer la gestion des caches dans le moteurHyperFileSQL Client/Serveur.

HGèreDoublon Active ou désactive la gestion des doublons sur une clé.

HGèreIntégrité Active ou désactive la gestion d'une contrainte d'intégrité surune relation d’une table.

HGèreJournal Active ou désactive la gestion du journal d'une table journalée.

HGèreMémo Active ou désactive la gestion des colonnes de type blob(mémo).

HGèreREP Active ou désactive la gestion du fichier .REP.

HGèreRéplication Active ou désactive temporairement la gestion de la réplica-tion.

HGèreServeur Permet de modifier certains paramètres du serveur.

HGèreTâche Active ou désactive une tâche planifiée d'un serveurHyperFileSQL Client/Serveur.

HGèreTransaction Active ou désactive la gestion des transactions.

HGèreTrigger Active ou désactive la gestion des triggers.

HImporteHF55 Importe table Hyper File 5.5 dans une table au formatHyperFileSQL Classic.

HImporteTexte Importe un fichier Texte dans une table au format HyperFileSQLClassic.

HImporteXML Importe un fichier XML dans une table au format HyperFileSQLClassic.

HInfoBlocage Renvoie des informations sur le verrou (blocage) d'une table,d'une ligne, ou de toutes les lignes d’une table.

HInfoDroitBaseDeDonnées Permet de connaître les droits accordés sur une base de don-nées définis pour un utilisateur ou un groupe.

HInfoDroitFichier Permet de connaître les droits accordés sur une table (un fi-chier de données) pour un utilisateur ou un groupe.

HInfoDroitServeur Permet de connaître les droits accordés sur un serveur à un uti-lisateur ou un groupe.

HInfoFichier Renvoie les caractéristiques d'une table (un fichier) présentsur un serveur HyperFileSQL.

HInfoGroupe Renvoie des informations sur le groupe d'utilisateurs spécifié.

HInfoLog Renvoie des informations sur les logs du serveur.

HInfoMémo Renvoie les caractéristiques des blob (mémo binaires).

HInfoPropriétéBaseDeDonnées Permet de connaître les propriétés d'une base de données si-tuée sur un serveur HyperFileSQL.

HInfoPropriétéFichier Permet de connaître les propriétés d'une table (un fichier dedonnées) située sur un serveur HyperFileSQL.

HInfoPropriétéServeur Permet de connaître les propriétés d'un serveur HyperFileSQL.

HInfoRéplica Renvoie des informations sur le réplica spécifié. En particulier,cette fonction permet de savoir si la base de données contientdes données à répliquer.

HinfoSauvegarde Renvoie des informations sur une ou plusieurs sauvegardes ef-fectuées sur un serveur HyperFileSQL Client/Serveur.

HinfoServeur Renvoie l'information spécifiée à propos du poste serveur.

HinfoTâche Renvoie les caractéristiques d'une tâche planifiée dans une va-riable avancée de type hTâchePlanifiée.

HInfoUtilisateur Met à jour les variables de gestion des utilisateurs avec les in-formations concernant l'utilisateur spécifié.

HInitAbonné Initialise la plage d'identifiants automatiques d'un fichier dedescription d'un réplica abonné (extension ".RPL").

HInterditAccèsBaseDeDonnées Interdit tous les accès à une base de données, ou bien auxbases de données accessibles par une connexion.

HInterditModif Interdit toute modification sur une table (pour tous les pro-grammes, y compris le programme qui a demandé l'interdic-tion). Les lignes sont uniquement accessibles en lecture.

HJournalInfo Insère des commentaires lors de la journalisation d'une opéra-tion.

HJournalRecrée Permet de recréer un journal à vide. Cette fonction permet parexemple une remise à 0 du journal après une sauvegarde ouune réplication par exemple. Le contenu des fichiers existantsest perdu.

HJournalRedémarre Redémarre la journalisation de la table. Cette journalisation aété arrêtée grâce à la fonction HJournalStop.

HJournalStop Arrête la journalisation de la table. Les manipulations effec-tuées dans le fichier journalé ne sont plus enregistrées.

HLibère Transforme les lignes rayées d'une table en lignes supprimées.

HyperF i leSQL • www.pcsoft . fr

19

Page 20: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

HLibèrePosition Supprime une position sauvegardée par la fonction HSauvePo-sition.

HListeAnalyse Renvoie la liste des schémas (analyses) WinDev disponiblesdans un répertoire donné.

HListeBaseDeDonnées Liste les bases de données Client/Serveur associées à uneconnexion.

HListeClé Renvoie la liste des clés et index d'une table reconnue par lemoteur HyperFileSQL.

HListeConnexion Renvoie la liste des connexions définies dans l'application(connexions définies dans le schéma et/ ou dynamiquement).

HListeElémentStocké Renvoie la liste des éléments stockés sur un serveurHyperFileSQL (collections de procédures, procédures stockéesou requêtes).

HListeFichier Renvoie la liste des tables (des fichiers) de l'analyse en coursou d'une analyse spécifique reconnue par le moteurHyperFileSQL.

HListeGroupe Renvoie la liste des groupes d'utilisateurs définis pour uneconnexion.

HListeIndexFullText Renvoie la liste des index full-text d'un fichier (d'une requêteou d'une vue) reconnu par le moteur HyperFileSQL

HListeLiaison Renvoie la liste des liaisons (de type Merise) présentes dansl'analyse en cours ou dans une analyse spécifique.

HListeParamètre Renvoie la liste des paramètres sauvegardés à partir des pro-cédures stockées sur le serveur.

HListeParamRequête Renvoie la liste des paramètres d'une requête créée avec l’édi-teur de requêtes.

HListeProvider Renvoie la liste des providers OLE DB installés sur le poste.

HListeREP Renvoie la liste des affectations des tables présentes dans uneanalyse.

HListeRubrique Renvoie la liste des colonnes (des rubriques) d’une table re-connue par le moteur HyperFileSQL.

HListeTâche Liste les tâches planifiées d'un serveur.

HListeTrigger Renvoie la liste des triggers appliqués sur une ou plusieurs ta-bles HyperFileSQL.

HListeTriggerServeur Liste les différents triggers disponibles sur une connexion ousur un des fichiers de la connexion.

HListeUtilisateur Renvoie la liste des utilisateurs définis pour une connexion.

HListeUtilisateurConnecté Renvoie la liste les utilisateurs actuellement connectés à un ouplusieurs fichiers manipulés par une connexion Client/Serveur.

HLit Lit une ligne dans une table en fonction d'un numéro de lignedonné.

HLitDernier Positionne sur la dernière ligne d’une table, lit la ligne et met àjour les variables HyperFileSQL.

HLitPrécédent Positionne sur la précédente ligne d’une table, lit la ligne etmet à jour les variables HyperFileSQL.

HLitPremier Positionne sur la première ligne d’une table, lit ligne et met àjour les variables HyperFileSQL.

HLitRecherche Positionne sur la première ligne d’une table dont la valeurd'une colonne spécifique est supérieure ou égale à une valeurrecherchée.

HLitRechercheDernier Positionne sur la dernière ligne d’une table dont la valeur decolonne spécifique est inférieure ou égale à une valeur recher-chée.

HLitRecherchePremier Positionne sur la première ligne d’i-une table dont la valeurd'une colonne spécifique est supérieure ou égale à une valeurrecherchée.

HLitSuivant Positionne sur la ligne suivante d'une table, lit la ligne et met àjour les variables HyperFileSQL.

HMigreCléComposéeReliée Migre les valeurs des clés composées reliées provenant d'unetable au format Hyper File 5.5 migré vers HyperFileSQL Classic.

HMiseAJourCollection Crée ou met à jour une collection de procédures sur un serveurHyperFileSQL

HMiseAJourRequête Crée ou met à jour une requête sur un serveur HyperFileSQL

HMode Change le mode et la méthode de blocage des tables.

HModifie Modifie la ligne spécifiés ou la ligne présente en mémoire dansla table.

HModifieDroitBaseDeDonnées Modifie les droits donnés à un utilisateur ou à un groupe pourune base de données HyperFileSQL Client/Serveur.

HModifieDroitFichier Modifie les droits accordés sur une table (un fichier de don-nées) HyperFileSQL Client/Serveur pour un utilisateur ou ungroupe.

HModifieDroitServeur Modifie les droits accordés sur un serveur HyperFileSQL pourun utilisateur ou un groupe.

HModifieGroupe Modifie les informations du groupe en fonction des élémentsprésents dans les variables de gestion de groupes correspon-dantes.

HModifiePropriétéBaseDeDonnées Modifie les propriétés d'une base de données située sur unserveur HyperFileSQL.

HModifiePropriétéFichier Modifie les propriétés d'un fichier HyperFileSQL situé sur unserveur.

HModifiePropriétéServeur Modifie les propriétés d'un serveur HyperFileSQL.

HmodifieTâche Modifie une tâche planifiée sur le serveur définie par laconnexion.

HModifieUtilisateur Modifie les informations d'un utilisateur en fonction des élé-ments présents dans les variables de gestion des utilisateurscorrespondantes.

HNbEnr Renvoie le nombre de lignes (d'enregistrements) d'une tableou d'une vue HyperFileSQL.

HNumEnr Renvoie le numéro de ligne (de l'enregistrement) en coursdans la table ou dans la vue HyperFileSQL.

HOptimise Optimise l'accès aux index des tables HyperFileSQL Classic :les index sont chargés dans les caches du système. Accélèreles premiers parcours de tables et les premières exécutions derequête.

HOptimiseRequête Optimise les requêtes de sélection en utilisant les temps mortslors de la manipulation d'une application (période sans traite-ments) Optimise l'accès aux index des tables HyperFileSQL.

HOuvre Ouvre une table.

HOuvreAnalyse Ouvre une analyse au format HyperFileSQL Classic.

HOuvreConnexion Ouvre une connexion à une base de données.

HPasse Fixe le mot de passe utilisé pour créer ou pour ouvrir une table.

HPositionCourante Renvoie la position approximative de la ligne dans une table.

HPositionne Positionne sur une ligne à partir de la position approximatived'une de ses colonnes. La ligne est lue.

HPoste Mémorise un numéro unique de poste afin d'utiliser les tran-sactions en réseau.

HPrécédent Positionne sur la ligne précédente de la table. La ligne n'estpas lue.

HPremier Positionne sur la première ligne d’une table. La ligne n'est paslue.

HPrépareRequêteSQL Initialise une requête écrite en langage SQL et déclare cette re-quête au serveur de base de données pour optimiser les pro-chaines exécutions de cette requête. Cette requête n'est pasexécutée. La requête pourra ensuite être exécutée grâce à lafonction HExécuteRequêteSQL.

HPriorité Permet de connaître ou de modifier la priorité de l'applicationappelante.

HPrioritéClient Modifie la priorité d'une application cliente

HPurgeRepTravail Purge et détruit le répertoire temporaire précédemment créélors de l'exécution de la fonction HRepTravailServeur.

HRaye Raye une ligne d’une table.

HRAZ Initialise une ou tous les champs d’une table avec leurs valeurspar défaut.

HRAZClient Initialise la structure de gestion des postes Client (structureHClient).

HRAZGroupe Initialise les variables de gestion des groupes avec les valeurspar défaut.

HRAZUtilisateur Initialise les variables de gestion des utilisateurs avec les va-leurs par défaut.

HRecherche Positionne sur la première ligne d’une table dont la valeurd'une colonne spécifique est supérieure ou égale à une valeurrecherchée.

HRechercheDernier Positionne sur la dernière ligne d’une table dont la valeurd'une colonne spécifique est inférieure ou égale à une valeurrecherchée. L'enregistrement n'est pas lu.

HRecherchePremier Positionne sur la première ligne d’une table dont la valeurd'une colonne spécifique est supérieure ou égale à une valeurrecherchée.

HReconnecte Effectue une reconnexion au serveur pour toutes lesconnexions interrompues.

HRecule Recule de plusieurs lignes dans la table, à partir de la positionen cours, selon une colonne spécifiée.

HRécupèreEnregistrement Renvoie le contenu de la ligne (l'enregistrement) en cours.

HRécupèreLog Récupère dans une table les logs du serveur réalisés entredeux dates données

HRécupèreRubrique Renvoie le contenu d'une colonne (rubrique) de la ligne encours.

HRégénèreFichier Régénère une table (fichier) à partir de son journal.

HRéindexationEnCours Avertit si une réindexation est en cours sur une table et renvoiele pourcentage de réindexation effectué.

HRéindexe Reconstruit l'index d'une table.

HRepTravailServeur Renvoie le chemin d'un répertoire temporaire sur le serveur.

HRestaureSauvegarde Permet de restaurer une sauvegarde effectuée grâce à la fonc-tion HSauvegarde (ou via le Centre de Contrôle HyperFileSQL).

HRetourPosition Restaure le contexte précédemment sauvegardé d'une table.

HyperF i leSQL • www.pcsoft . fr

20

Page 21: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

HRplDéclareLiaison Déclare une Liaison de type (1,1) (0,n) entre deux tables. Seulsles lignes de la table cible avec une ligne correspondante dansla table source (en respectant le filtre de celui-ci) seront répli-qués lors d'une réplication hétérogène.

HRplProcédureFiltre Définit la procédure WLangage qui sera appelée à chaque opé-ration de réplication pour une table donnée. Cette procédureest exécutée par les fonctions HCréeRéplicaTransportable etHSynchroniseRéplica.

HSauvegarde Réalise la sauvegarde du contenu d'un serveur HyperFileSQL

HSauveParamètre Sauve une valeur persistante à partir d'une procédure stockée.

HSauvePosition Mémorise le contexte en cours d'une table.

HSécurité Active ou désactive le mécanisme de sécurité.

HStatCalcule Réalise diverses statistiques sur les clés d'une table.

HStatDate Renvoie la date de la dernière mise à jour des statistiques d'in-dex. Ces statistiques ont été réalisées grâce aux fonctionsHStatCalcule ou HRéindexe.

HStatHeure Renvoie l'heure de la dernière mise à jour des statistiques d'in-dex. Ces statistiques ont été réalisées grâce aux fonctionsHStatCalcule ou HRéindexe.

HStatNbDoublon Renvoie le nombre de doublons pour une colonne donnée.

HStatNbEnr Renvoie le nombre d'entrées pour une colonne donnée.

HStatNbEnrIntervalle Renvoie une estimation majorée du nombre d'entrées pourune colonne donnée dans un intervalle de valeurs donné.

HSubstRep Remplace le nom logique du répertoire des données (spécifiédans l'analyse) par un nom physique.

HSuivant Positionne sur la ligne suivante de la table. La ligne n'est paslue.

HSupprime Supprime une ligne d’une table.

HSupprimeBaseDeDonnées Supprime une base de données présente sur un serveurHyperFileSQL.

HSupprimeCollection Supprime une collection de procédures stockées d'un serveurHyperFileSQL.

HSupprimeFichier Supprime les fichiers HyperFileSQL (fichier .fic, .ndx et .mmos'ils existent) sur le serveur.

HSupprimeGroupe Supprime un groupe d'utilisateurs associé à une connexion,sur le serveur.

HSupprimeLiaison Supprime une règle d'intégrité entre deux tables sur le serveur.

HSupprimeParamètre Supprime un paramètre précédemment sauvé avec la fonctionHSauveParamètre.

HSupprimeRequête Supprime une requête d'un serveur HyperFileSQL.

HSupprimeSauvegarde Supprime une sauvegarde précédemment effectuée avec lafonction HSauvegarde.

HSupprimeTâche Supprime une tâche planifiée d'un serveur HyperFileSQLClient/Serveur.

HSupprimeTout Supprime tous les enregistrements d'un fichier de données oud'une requête.

HSupprimeUtilisateur Supprime un utilisateur associé à une connexion sur le ser-veur.

HSurAppelServeur Personnalise la gestion de l'affichage d'un message sur leposte client, et la gestion de la déconnexion d'un poste client.

HSurErreur Personnalise la gestion automatique des erreurs.

HSynchroniseRéplica Synchronise un réplica maître et un réplica abonné.

HTransactionAnnule Si une transaction est en cours, annule toutes les opérationseffectuées sur les tables en transactions depuis le début de latransaction.

HTransactionDébut Démarre une transaction sur les tables HyperFileSQL, et crée latable des transactions.

HTransactionFin Valide la transaction en cours.

HTransactionInterrompue Permet de savoir si une transaction a été interrompue (la trans-action n'a été ni validée, ni annulée). Les caractéristiques de latransaction interrompue peuvent être connues grâce à des va-riables HyperFileSQL.

HTransactionLibère Transforme toutes les lignes «en transaction» en lignes «Nor-males» si ces lignes n'appartiennent pas à une transaction ac-tuellement en cours. Si une ligne de la table spécifiée estconsidérée comme étant en transaction, mais n'appartient àaucune transaction en cours, elle est automatiquement libé-rée.

HTransactionListe Liste les transactions en cours ou interrompues sur le serveurde la connexion spécifiée.

HTrieVue Trie une vue, en créant un index sur une colonne de la vue.

HTrouve Vérifie si la ligne en cours correspond au filtre ou à la re-cherche en cours.

HVérifieIndex Vérifie que les données contenues dans l'index (fichier .NDX)référencent correctement les données contenues dans la table(.FIC).

HVérifieStructure Fixe le mode de comparaison des fichiers.

HVersFichier Copie une source de données (vue, requête, …) vers une table-

physique HyperFileSQL de même description. Cette tablen'estni cryptée, ni protégée par mot de passe.

HVersion Permet de savoir si le contenu de la table a été modifié.

HVersRubrique Affecte la valeur indiquée à un champ (une rubrique) de laligne en cours.

HVueVersFichier Enregistre les modifications réalisées dans une vue dans latable (le fichier) correspondante.

VOCABULAIRELe vocabulaire varie selon les interlocuteurs. Un même concept est souvent décrit par des mots différents.Chacun a «sa» norme, ses habitudes !Voici un petit dictionnaire des synonymes de termes utilisés dansle domaine des bases de données.

Vocabulaire PC SOFT Chez d’autres éditeurs

Analyse (MCD, MLD) Schéma, modèle relationnel, modèleentité/relation

Graphe de l’analyse Modèle du schémaFichier TableRubrique Colonne, Champ (le champ est le croise-

ment d’une colonne et d’une ligne)Enregistrement Ligne,tuple, rowLiaison RelationBlocage VerrouClé IndexClé unique Clé primaireClé avec Doublon Clé étrangère ou clé sans contrainte

d’unicitéRubrique de liaison Clé étrangèreFenêtre FormChamp ContrôleEtat RapportTable de visualisation Datagrid, BrowseTâche planifiée OrdonnanceurMémo texte Lob ou clobMémo binaire Lob ou blobProcédure stockée UDF (User Defined Function)

Une base de données est un ensemble de tables (fichiers) reliéespar des relations (liaisons).Une table (fichier) est un ensemble de données structurées en co-lonnes (rubriques), composé de lignes (enregistrements). Le croise-ment d'une ligne et d'une colonne est un champ (valeur derubrique).Un index est un moyen d'accélérer les recherches, les requêtes etles accès à une table. Un index peut être défini sur une colonne (rubrique clé) ou surplusieurs colonnes (clé composée).Une clé primaire est une clé unique. Une clé étrangère est une clé avec possibilité de doublon, utiliséeconjointement à une clé primaire pour réaliser une relation (liai-son) entre 2 tables.

HyperF i leSQL • www.pcsoft . fr

21

Page 22: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

QUI UTILISEHYPERFILESQL ?

HyperFileSQL est diffusé à plusieurs millions d’exemplaires à tra-vers le monde, dans plus de 100 pays.HyperFileSQL est déployé sur des sites les plus contraignants(Web, télécoms, entreprises, banques, médical, recherche, édi-teurs de logiciels, administrations, mi-nistères, etc....) et qui exigent unehaute disponibilité avec des perfor-mances extrêmes en temps réel etune forte évolutivité.

Vous retrouvez de nombreux témoi-gnages d’utilisation par des sociétésprestigieuses dans ce numéro spécialde «01 Informatique» (disponible sursimple demande).

Témoignages

Voici quelques témoignages, extraits du numéro spécial «01 In-formatique» consacré à WINDEV, WEBDEV et HyperFileSQL (nu-méro disponible gratuitement sur simple demande).

«En terme de performance, HyperFileSQL a du répondant.C’est toujours immédiat»

«La base HyperFileSQL a épaté les utilisateurs de parses excellents temps de réponse aux requêtes lan-cées»

«Concrètement, chacune des radios distantes accède parADSL à une base HyperFileSQL en architecture Client/Ser-veur»

«La base de données HyperFileSQL nous fait profiterde ses performances reconnues. Le résultat de toutesles requêtes est toujours immédiat»

«C’est près de 10.000 enregistrements qui sont ainsi géréspar HyperFileSQL Mobile et les accès sont immédiats»

«Tous les commerciaux et nos clients sont impres-sionnés par la rapidité d’accès à la base de don-nées.»

«La base HyperFileSQL propose un mécanisme de réplica-tion sophistiqué et facile à mettre en oeuvre»

«Evidemment, nous avons déployé la baseHyperFileSQL sur les bornes interactives. Sa fiabilitéet sa diffusion gratuite illimitée est un atout majeurdans le cadre d’un parc de plus de 700 bornes. Le capdes 1000 bornes sera atteint sous peu».

Vous trouverez également sur le site www.pcsoft.fr des vidéostechniques et des vidéos de témoignage.

LISTE D’AVANTAGESHYPERFILESQL

Voici un résumé de nombreux avantages liés à l’adop-tion de HyperFileSQL:• Richesse fonctionnelle• Gratuité (version complète, illimitée, avec tous les outils)• Outil de description de schémas • Aisément installable • Aisément embarquable• Administration aisée (auto-administrée, auto-optimisée)• Outils d’administration livrés• Très bonne intégration aux best sellers de PC SOFT: WINDEV,

WEBDEV, WINDEV Mobile• Cryptage des données, des tables et des index• Encryption au niveau colonne, backups, trafic réseau• Simplicité• Compatibilité: Windows (8, 7, Vista, XP, Mobile, CE...), Linux,

Mac, iOs (iPhone, iPad), Android• Compatibilité binaire des différentes versions : locale, réseau,

embarquée, client/serveur• Solution tout-en-un avec WINDEV et WEBDEV: orienté RAD, il

génère les tables, les traitements, les fenêtres et les états• Procédures stockées simples à écrire• Sauvegardes à chaud et différentielles• Protection anti-injection• Unicode• Gestion efficace des langues et différents jeux de caractères

ainsi que des ordres de tri, granularité au niveau colonne• Réplication facile• Reconnexion automatique• Monitoring aisé• Cluster haute disponibilité • Performances • Pérennité • Fonction d'audit, tuning• Optimisation des requêtes• Gestion de l'indexation Full Text• Blob, Lob• Contraintes d’intégrité• Support technique gratuit*

• Tout en français (ou tout en anglais)• Maintenance automatique du schéma (SDD), sur un nombre illi-

mité de bases déployées• Facilité de déploiement et de prise en main• Robustesse avec de fortes volumétries• Peu gourmand en ressources • Sécurité d’accès • Répartition automatique de la charge entre les différents clients

HyperF i leSQL • www.pcsoft . fr

22

HyperFileSQL® est livré gratuitement avec lesAGL WINDEV, WEBDEV et WINDEV Mobile.HyperFileSQL est optimisé pour fonctionneravec ces AGL.L’utilisation et la diffusion du moteur de basede données HyperFileSQL est libre et gratuiteavec des applications et des sites créés àl’aide de ces AGL, et ce quelle que soit laquantité déployée et quel que soit le typed’application (applications éducatives, appli-cations personnelles et applications com-merciales).

Il n’y a pas de redevances à verser, aucunedéclaration à effectuer.Le déploiement est libre, illimité et gratuit.Veuillez vous référer au texte de la licenced’utilisation pour toute information supplé-mentaire.Le pilote ODBC et le provider OLE DB sontdiffusables gratuitement avec les applica-tions réalisées avec WINDEV, WEBDEV ouWINDEV Mobile.Les outils cités dans cette documentationsont livrés en standard.

Toutes les marques sont déposées par leurspropriétaires respectifs. Certaines fonctions peuvent ne pas être dis-ponibles immédiatement lors de la commer-cialisation de la version, mais livréesultérieurement sous forme de télécharge-ment. WINDEV, WEBDEV et WINDEV Mo-bile sont des logiciels professionnels. Malgré le soin apporté à sa rédaction, ce do-cument n’est pas contractuel. Les copiesd’écran et les listes sont indicatives. N’hésitez jamais à nous contacter pour toute

information complémentaire ou pour obte-nir une confirmation de fonctionnalité. Politique environnementale: lorsquePC SOFT imprime des documents «papier»,PC SOFT, le fournisseur de papier ou l'impri-meur lorsqu’il est certifié FSC «Forest Ste-wardship Council» et PEFC «Programme forthe Endorsement of Forest Certificationschemes», replante autant d'arbres que ceuxqui ont été utilisés pour l'impression. Le label FSC a été créé par l'ONG FSC, quirassemble entre autres Greenpeace, Les

Amis de la Terre et le WWF.Par exemple imprimer 100.000 documenta-tions de 68 pages sur papier brillantconsomme 10 arbres: PC SOFT fait immé-diatement replanter 10 arbres. Par ailleurs, nous privilégions la pâte à papierprincipalement fabriquée à partir de déchetsde bois (par exemple en provenance de scie-ries pour l'ameublement) et de coupesd'éclaircie dans les forêts.

Page 23: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

HyperFileSQL est le meilleurallié de vos données !

Vous aussi, comme des millionsd’utilisateurs à travers le monde,profitez des performances et de

la sécurité de HyperFileSQL.

®

Page 24: PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ · s’exécutant sous Windows CE, Windows Mobile, Windows 8 RT, iOS (iPhone et iPad), Android. ... HyperFileSQL assure l’intégrité des

Fournisseur Officiel de la Préparation Olympique

Depuis 1988

Siège Montpellier : 3 Rue de Puech Villa BP 444 08 34197 MONTPELLIER, France Tél: 04.67.032.032 Fax: 04.67.03.07.87 Agence Paris : 142 Avenue des Champs Elysées 75008 PARIS, France Tél: 01.48.01.48.88

PC SOFT Informatique - SAS au capital de 1 728 992 Euros - RCS 330 318 270 -

SIRET 330 318 270 00064 - Code APE 5829B - Numéro de TVA Européen: FR09 330 318 270

®

www.pcsoft.fr

SGBDRWindows, Linux, Mac,Android, iOS (iPhone, iPad)Client/Serveur, Monoposte, Mobile, Embarqué

• SGBDR SQL• Windows, Linux, Mac• Mobile, iOS (iPhone, iPad),

Android, Windows 8• Local• Embarqué• Client/Serveur• Cluster• Grande capacité• Tous les types de

données• Unicode• Index, in‡dex multi-

colonnes, clés• Intégrité référentielle• Full text• Procédures stockées• Triggers• Intégrité référentielle• Journalisation• Transactions• Compression des

données• Compression des trames• Verrou de ligne

automatique• Reconnexion

automatique• Ordonnanceur• Réplication• SDD• Gestion des droits• Injection SQL impossible• Cryptage• Provider OLE DB• Pilote ODBC• Centre de Contrôle• Administration à chaud• Sauvegardes • Modélisation de base• Requêteur• Reporting• Visualiseur de données• Robot de surveillance• Lien natif avec

WINDEV, WEBDEV et WINDEV Mobile

• Déploiement gratuit*

PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ

WINDEV • WEBDEV • WINDEV Mobile

®