Scénario: ExampleHMO à l'aide du contrôle d'accès aux lignes et aux colonnes-Mises à jour des données
Pendant qu'il est à l'hôpital, Bob change de traitement. Par conséquent, ses enregistrements dans la base de données ExampleHMO doivent être mis à jour.
Le Dr Lee, qui est le médecin de Bob, conseille un changement de traitement et change le médicament de Bob. L'enregistrement de Bob dans les systèmes ExampleHMO doit être mis à jour. Les règles de droits d'accès aux lignes définies dans la base de données ExampleHMO indiquent que toute personne ne pouvant pas afficher les données d'une ligne ne peut pas mettre à jour les données de cette ligne. Etant donné que le PCPID de Bob contient l'ID de M. Lee et que le droit de ligne est défini, M. Lee peut à la fois afficher et mettre à jour l'enregistrement de Bob à l'aide de l'exemple d'instruction SQL suivant:
UPDATE PATIENT SET PHARMACY = 'codeine' WHERE NAME = 'Bob';
Select * FROM PATIENT WHERE NAME = 'Bob';
SSN USERID NAME ADDRESS PHARMACY ACCT_BALANCE PCP_ID
----------- --------- ------- ------------ ----------- -------------- ------
123-45-6789 BOB Bob 123 Some St. codeine 0.00 LEE
UPDATE PATIENT SET PHARMACY = 'codeine' WHERE NAME = 'Dug';
SQL0100W No row was found for FETCH, UPDATE or DELETE; or the result of a query
is an empty table. SQLSTATE=02000Etant donné que l'ID PCPID de Creuser Ne contient pas l'ID de M. Lee et que le droit d'accès aux lignes est défini, M. Lee ne peut pas afficher ni mettre à jour l'enregistrement de Dug.