Suppression des données

La fonctionnalité de suppression des données est identique au masquage des données mais la suppression rend invisibles les données supprimées à l'ensemble des utilisateurs.

Les données supprimées en utilisant l'extension pgSQLPlus ne le sont pas définitivement. Une donnée supprimée peut redevenir non-supprimée, contrairement à des données supprimées avec une instruction SQL DELETE.

La fonctionnalité de suppression de données nécessite de désigner une colonne source qui servira par la suite à identifier quelle ligne est masquée ou non pour un utilisateur donné.

Déploiement de la suppression sur une table

Le déploiement de la suppression s'effectuera automatiquement si la base de données est générées par l'application pgSQLPlus. Sinon, un déploiement manuel est possible en utilisant la fonction create_delete_table:

create_delete_table( _schema TEXT, _table TEXT, _column TEXT, _column_type_def TEXT DEFAULT NULL );
_schema
Nom du schéma dans lequel la table sur laquelle la fonctionnalité de suppression doit être initiée est située.
_table
Nom de la table sur laquelle la fonctionnalité de suppression doit être déployée.
_column
Nom de la colonne source.
_column_type_def
Indique le type de la colonne. Cette option peut être omise si la colonne source visée existe déjà en base de données.

Le déploiement de la fonctionnalité de suppression crée automatiquement deux nouvelles fonctions dans le schéma parent de la table visée :syst_insert_delete_from_[Nom de la table] et syst_drop_delete_from_[Nom de la table]. Ces fonctions permettent de supprimer ou de dé-supprimer des tuples de la table.

Suppression de données

Le masquage s'effectue avec la fonction syst_insert_delete_from_[Nom de la table]:

syst_insert_delete_from_[Nom de la table]( _valueDATATYPE[] );
_value
Ensemble de valeur identifiant les données qu'il faut supprimer.DATATYPE correspond au même type que celui de la colonne source.

Dé-suppression de données

Le dé-suppression s'effectue avec la fonction syst_drop_delete_from_[Nom de la table]:

syst_drop_delete_from_[Nom de la table]( _valueDATATYPE[] );
_value
Ensemble de valeur identifiant les données qu'il faut dé-supprimer.DATATYPE correspond au même type que celui de la colonne source.

Suppression de la fonctionnalité de suppression sur une table

La suppression de la fonctionnalité de suppression nécessite l'usage de la fonction delete_delete_table.

delete_delete_table( _schema TEXT, _table TEXT, _column TEXT, _column_type_def TEXT DEFAULT NULL );

Les arguments sont identiques à ceux de la fonction create_delete_table. Les fonctions syst_insert_delete_from_[Nom de la table] et syst_drop_delete_from_[Nom de la table] sont également supprimées.