|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : mars 2009 Messages : 155 ![]() |
y a-t-il un moyen d’empêcher de mettre à jour quelques colonnes d'une vue ?
en fait la vue permet d'afficher toutes les colonnes mais il n’y a que 2 colonnes qu'on peut modifier, donc j'ai penser à créer un trigger sur la vue permettant de déclencher une exception si on essaie de mettre à jour les colonnes interdites, le problème je n'arrive à compiler Code :
merci |
||
|
|
00
|
|
|
#2 | ||
![]() Inscription : décembre 2002 Messages : 2 388 ![]() |
Il peut être utile de savoir que les choses suivantes sont possibles :
1) une vue en lecture seule Code :
CREATE VIEW V AS SELECT * FROM scott.emp WITH READ only; 3) des privilèges au niveau de la colonne (sauf pour SELECT) Code :
Par contre, le PL/SQL est moins permissif que la poésie, si on met n'importe quoi dans la syntaxe, ça ne marche pas ! Charge à vous de prendre en compte les messages d'erreur que votre code provoque...
__________________
Consultant / formateur Oracle indépendant Certifié OCP 10g et 11g, sécurité 11g |
||
|
|
30
|
|
|
#3 | |||
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
Tout à fait d'accord avec Pomalaix, mais comme j'allais poster mon test autour du trigger je le propose quand même, ça t'aidera toi ou quelqu'un d'autre...
Donc avec un trigger ça peut donner ça (l'idée est d'autoriser la MAJ sur JOB et SAL et de l'empécher sur EMPNO ET ENAME) : Code :
INSTEAD OF Triggers Citation:
Je t'encourrage donc vivement à d'abord tester toutes les colonnes nécessitant un RAISE et n'UPDATE que pour les 2 colonnes restantes dans le ELSE... Enfin seul toi qui connaît le contexte est capable de juger de la situation. |
|||
|
|
20
|
Copyright © 2000-2012 - www.developpez.com