Contrôle des accès en lecture ou en écriture aux tables

De RAD Studio
Aller à : navigation, rechercher

Remonter à Utilisation d'ensembles de données de type table


Par défaut, quand un ensemble de données de type table est ouvert, il demande l'accès en lecture et en écriture à la table de la base de données sous-jacente. Selon les caractéristiques de la table de la base de données sous-jacente, le droit d'écriture demandé peut ne pas être accordé (par exemple, quand vous demandez l'accès en écriture à une table SQL d'un serveur distant et que le serveur a limité l'accès à la table en lecture seulement).

Remarque :  Ce n'est pas vrai pour TClientDataSet, qui détermine si les utilisateurs peuvent modifier des données à partir d'informations procurées par le fournisseur de l'ensemble de données avec les paquets de données. Ce n'est pas vrai non plus pour TSQLTable, qui est un ensemble de données unidirectionnel, et donc toujours en lecture seule.

Quand une table s'ouvre, vous pouvez vérifier la propriété CanModify pour savoir si la base de données sous-jacente (ou le fournisseur de l'ensemble de données) autorise les utilisateurs à modifier les données de la table. Si CanModify vaut False, l'application ne peut pas écrire dans la base de données. Si CanModify vaut True, votre application peut écrire dans la base de données si la propriété ReadOnly de la table vaut False.

ReadOnly détermine si un utilisateur peut à la fois voir et modifier les données. Quand ReadOnly vaut False (valeur par défaut), un utilisateur peut à la fois voir et modifier les données. Pour limiter un utilisateur à la visualisation des données, définissez ReadOnly par True avant d'ouvrir la table.

Remarque :  ReadOnly est implémentée sur tous les ensembles de type table, à l'exception de TSQLTable, qui est toujours en lecture seule.

Voir aussi