|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : avril 2003 Messages : 131 ![]() |
Bonjour,
Prenons deux schémas: - sch1 - sch2 sch1 a une vue que nous allons appeler, view1 qui est basé sur une table d'un autre schéma. La vue est créée, fonctionne, aucun problème de ce coté là. sch2 possède une vue view2, qui est basée sur la vue view1. sch2 peut faire des select sur view1: Lorsque la vue view2 est créée, j'ai une erreur concernant les privilèges. En regardant de plus prêt, sch2 ne peut pas faire de select sur sch1.view1. Alors qu'on vient juste de faire un grant ... Si je fais un: forcement, ca marche. Mais je ne souhaite pas que sch2 puisse faire des select sur tous les schémas. Est ce que j'aurais zappé un truc au niveau des drois ? |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
tu es bien certain que l'erreur de privilège concerne cette table ? Ce serait pas mal d'avoir le code de la vue et le message d'erreur
|
|
|
00
|
|
|
#3 | |
|
Membre régulier
![]() Inscription : avril 2003 Messages : 131 ![]() |
Oui je suis certain
Sinon, je viens de comprendre pourquoi. J'explique, ca va peut être parraitre logique du coup ^^ sch1 a donc le droit select sur la table tab3 d'un autre schéma, que nous allons nommer sch3. La vue view1 qui est valide, se base donc sur la table, tab3. Lorsque sch2 essaye de faire un select sur view1 pour faire view2, il lui faut les droits select sur view1 mais il faut que le select de sch1 sur tab3 soit en "grant option = yes". Je suis désolé mais ca dépasse un peu mes connaissances là, mais on dirait comme de l'héritage ? Si je me trompe pas "grant option" permet de spécifier si le droit peut être redonné par le schéma qui le possède. Ca fait bien dans l'idée comme un héritage. edit: pour info, l'erreur, ca pourra servir à quelqu'un: Citation:
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com