DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL
  • Mode de blocage
  • Changement de mode
  • Changement de méthode
  • Changement de mode et de méthode
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
<Source>.Mode (Fonction)
En anglais : <Source>.Mode
ODBCNon disponible avec ce type de connexion
Change le mode et la méthode de blocage des tables.
OLE DBConnecteurs Natifs (Accès Natifs) Attention: Si le provider OLE DB ou le Connecteur Natif utilisé ne gère pas les blocages, les options de blocage seront sans effet.
Java Accès par JDBC: Cette fonction est sans effet et retourne toujours la constante hModeMulti.
Exemple
// Change le mode de tous les fichiers
HMode("*", hModeMulti)

// Rend la table "Client" inaccessible aux autres applications
Client.Mode(hModeMono)
Syntaxe

Modification du mode de blocage Masquer les détails

<Résultat> = <Source>.Mode(<Mode>)
<Résultat> : Constante de type entier
Mode de blocage effectué sur la table avant modification.
hModeMonoMode mono utilisateur: les tables sont totalement bloquées en lecture et en écriture dès leur ouverture. Ce mode empêche tout autre application à accéder aux tables déjà ouvertes par l'application en cours.
hModeMultiMode multi-utilisateurs: les tables ne sont pas bloquées à leur ouverture. Les autres applications peuvent accéder aux tables.

OLE DBConnecteurs Natifs (Accès Natifs) Le résultat correspond toujours à hModeMulti.
Java Accès par JDBC: Le résultat correspond toujours à hModeMulti.
<Source> : Type correspondant à la source spécifiée
Nom de la table manipulée.
<Mode> : Constante de type entier
Mode de blocage à effectuer sur la table.
hModeMono
(valeur par défaut)
Mode mono utilisateur: les tables sont totalement bloquées en lecture et en écriture dès leur ouverture. Ce mode empêche tout autre application à accéder aux tables déjà ouvertes par l'application en cours.
hModeMultiMode multi-utilisateurs: les tables ne sont pas bloquées à leur ouverture. Les autres applications peuvent accéder aux tables.

OLE DBConnecteurs Natifs (Accès Natifs) Le mode utilisé est toujours hModeMulti.

Modification du mode de blocage et de la méthode de blocage (utilisation avancée) Masquer les détails

<Résultat> = <Source>.Mode(<Mode> [, <Méthode>])
<Résultat> : Constante de type entier
Mode de blocage effectué sur la table avant modification.
hModeMonoMode mono utilisateur: les tables sont totalement bloquées en lecture et en écriture dès leur ouverture. Ce mode empêche tout autre application à accéder aux tables déjà ouvertes par l'application en cours.
hModeMultiMode multi-utilisateurs: les tables ne sont pas bloquées à leur ouverture. Les autres applications peuvent accéder aux tables.

OLE DBConnecteurs Natifs (Accès Natifs) Le résultat correspond toujours à hModeMulti.
Java Accès par JDBC: Le résultat correspond toujours à hModeMulti.
<Source> : Type correspondant à la source spécifiée
Nom de la table manipulée.
<Mode> : Constante de type entier
Mode de blocage à effectuer sur la table.
hModeMono
(valeur par défaut)
Mode mono utilisateur: les tables sont totalement bloquées en lecture et en écriture dès leur ouverture. Ce mode empêche tout autre application à accéder aux tables déjà ouvertes par l'application en cours.
hModeMultiMode multi-utilisateurs: les tables ne sont pas bloquées à leur ouverture. Les autres applications peuvent accéder aux tables.

OLE DBConnecteurs Natifs (Accès Natifs) Le mode utilisé est toujours hModeMulti.
<Méthode> : Constante de type entier optionnelle
Méthode de mise en place des blocages:
hModeDirect
(valeur par défaut)
Mise en place des blocages prioritaire (sur la modification par exemple).
Ainsi, la modification d'un enregistrement sur lequel de nombreuses lectures sont réalisées a peu de chances d'être effectuée, mais les blocages sont plus rapides.
hModeRéservationMise en place des blocages non prioritaire (utilisation avancée)
Cette méthode permet de modifier immédiatement un enregistrement sur lequel de nombreuses lectures sont effectuées. Cette méthode est plus lente que la méthode hModeDirect.
Cette constante est utile uniquement si un grand nombre de lectures bloquantes sont effectuées successivement sur un même enregistrement.

HFSQL Client/Serveur Ce paramètre n'est pas pris en compte.
Remarques

Mode de blocage

Par défaut, si le projet en cours:
  • est associé à un schéma des données, le mode de blocage effectué sur les tables est multi-utilisateurs (les tables ne sont pas bloquées à leur ouverture, les autres applications peuvent accéder aux tables).
  • n'est pas associé à un schéma des données, le mode de blocage effectué sur les tables est mono-utilisateur: les tables sont totalement bloquées en lecture et en écriture dès leur ouverture. Ce mode empêche tout autre application à accéder aux tables déjà ouvertes par l'application en cours.
Pour modifier le mode de blocage utilisé:
  1. Affichez la fenêtre de description du projet: sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
  2. Affichez l'onglet "Tables".
  3. Spécifiez le mode de blocage à utiliser (option "Mode de gestion des fichiers").

Changement de mode

Le changement de mode entraîne la suppression de tous les blocages en cours sur la table.
Il n'est pas nécessaire de fermer la table pour changer de mode.

Changement de méthode

Le changement de méthode n'a aucune influence sur les blocages en cours sur la table.
Il n'est pas nécessaire de fermer la table pour changer de méthode.

Changement de mode et de méthode

Le changement de mode et de méthode est réalisé directement sur la table physique. Ce changement est donc répercuté sur la table et sur tous ses alias.
Composante: wd300hf.dll
Version minimum requise
  • Version 25
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 08/01/2025

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