|
|
|
|
|
- Manipulations d'un enregistrement supprimé
- Nombre d'enregistrements supprimés
- Suppression d'un enregistrement à partir d'une requête
- Version de la table
- Taille de la table
- Suppression et blocage
- xBase/FoxFro
HSupprime (Fonction) En anglais : HDelete
Non disponible avec ce type de connexion
Supprime un enregistrement d'une table (d'une requête ou d'une vue). L'enregistrement est supprimé logiquement et physiquement. Il ne pourra pas être restauré (contrairement aux enregistrements rayés avec la fonction HRaye). Les opérations effectuées sont les suivantes: - l'enregistrement est supprimé: l'enregistrement est rendu inactif et il n'est plus référencé dans l'index. Les données ne sont pas conservées.
- les index (correspondant aux clés de l'enregistrement) sont supprimés du fichier d'index.
- les mémos associés à l'enregistrement sont supprimés du fichier de mémo.
Après l'exécution de la fonction HSupprime, l'enregistrement est inséré dans la liste des enregistrements supprimés de la table et sera ré-utilisé par la fonction HAjoute. WINDEV, WINDEV Mobile et WEBDEV proposent une gestion automatique des erreurs pour les 5 types d'erreur suivants: Erreur de doublons, Erreur d'intégrité, Erreur de mot de passe, Erreur de conflit de modification et d'état lors du conflit de modification, Erreur de blocage. Pour plus de détails, consultez Gestion assistée des erreurs HFSQL. Remarque: Pour supprimer tous les enregistrements d'une table, utilisez la fonction HSupprimeTout.
HLitRecherchePremier(Commande, NumCli, ValNumCli)
TANTQUE HTrouve() = Vrai
HSupprime()
HLitSuivant()
FIN
POUR TOUT Commande AVEC NumCli = ValNumCli
HSupprime()
FIN
Syntaxe
<Résultat> = HSupprime([<Table> [, <Numéro d'enregistrement> [, <Options>]]])
<Résultat> : Booléen - Vrai si l'enregistrement a été supprimé,
- Faux en cas de problème (enregistrement bloqué, etc. (voir cas particuliers)). La fonction HErreurInfo permet d'identifier l'erreur.
Si l'enregistrement à supprimer est déjà supprimé, la fonction HSupprime renvoie Vrai.
<Table> : Chaîne de caractères optionnelle Nom de la table HFSQL ou de la vue manipulée. Si ce paramètre correspond à une chaîne vide (""), la fonction HSupprime manipule la dernière table utilisée par la dernière fonction de gestion HFSQL (fonction commençant par la lettre H). <Numéro d'enregistrement> : Entier optionnel Numéro de l'enregistrement à supprimer. Si ce paramètre n'est pas précisé (est égal à 0 ou à la constante hNumEnrEnCours), l'enregistrement en cours sera supprimé. Cependant, l'enregistrement en cours restera l'enregistrement supprimé. ATTENTION: Il ne faut pas confondre le numéro d'enregistrement avec l'identifiant automatique associé à l'enregistrement.
Dans une utilisation normale, ces deux numéros ne sont pas identiques. Le numéro d'enregistrement peut être connu par la fonction HNumEnr.
<Options> : Constante optionnelle Paramètre la gestion de l'intégrité réalisée sur l'enregistrement supprimé. | | hIgnoreIntégrité | Ignore le contrôle d'intégrité sur cette opération, même si le contrôle de l'intégrité automatique est branché (fonction HGèreIntégrité) |
Remarques Suppression d'un enregistrement à partir d'une requête La suppression d'un enregistrement dans une requête peut être effectuée: - soit uniquement dans le résultat de la requête
- soit directement dans les tables manipulées par la requête (constante hModifieTable utilisée dans les fonctions HExécuteRequête ou HExécuteRequêteSQL). Dans ce cas, la constante hAvecFiltre est automatiquement sélectionnée.
Quel que soit le mode d'exécution de la requête (avec ou sans la constante hAvecFiltre), la fonction HSupprime n'est utilisable que sur les requêtes monofichiers. Attention: - Sur des tables non HFSQL, il est inutile de préciser la constante hModifieTable dans les fonctions HExécuteRequête ou HExécuteRequêteSQL: les tables intervenant dans la requête sont automatiquement modifiées lors de la modification du résultat de la requête.
- Il est impossible de supprimer un enregistrement dans une requête utilisant les groupes ou les agrégats.
- La gestion de l'intégrité et des doublons n'est pas réalisée lors d'opérations sur les requêtes multifichiers: il est conseillé d'utiliser les transactions pour éviter tout problème.
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|