Bonjour,
Au cours d'une procédure stockée je souhaite effectuer une tache en tant qu'administrateur.
Connaissez vous le moyen de changer d'utilisateur au cours d'une procédure stockée ?
merci.
Bonjour,
Au cours d'une procédure stockée je souhaite effectuer une tache en tant qu'administrateur.
Connaissez vous le moyen de changer d'utilisateur au cours d'une procédure stockée ?
merci.
On ne peux pas changer d'utilisateur dans une PS, la notion d'utilisateur est attachée à la connexion.
Quel est cette tache que vous souhaitez faire en tant qu'admin que vous ne pouvez faire avec le user normal ???![]()
Pourquoi ne donnez vous pas les droits necessaire à votre PS ? et au USER le droit d'éxécuter cette PS ?
Je souhaite que l'utilisateur A puisse supprimer une procédure créer par un utilisateur B ou C ou etc....
En parlant de droit, voulez vous dire quand mettant les droits suivants:
tous les utilisateurs pourront supprimer cette procédure ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part GRANT EXECUTE ON PROCEDURE MY_PROC TO PUBLIC
Non celà donne juste de droit d'exécution. Donc tout le monde a le droit d'executer MY_PROC.
Ensuite deuxième remarque vous ne pouvez supprimer ou créer une PS depuis une PS. A moins de le faire soit même dans les tables systemes (mais là attention si vous faites n'importe quoi vous risquez gros.) Dans cette optique, il faudrait donc donnez les droits à votre PS de modifier certaines tables systèmes et donner le droit d'execution de votre PS au public.
Non, en fait je souhaite juste pouvoir supprimer ma PS par une simple requete.
Cependant étant donné que le créateur de MY_PROC est A, B ne peut pas la supprimer, et c'est la que je rencontre mon problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part DROP MY_PROC
Dans l'ordre des choses l'utilisateur A doit pouvoir créer une procédure accessible à tous le monde et l'utilisateur B doit pouvoir la supprimer.
Chose qui parait extrément simple, or je n'arrête pas de rencontrer des problèmes.
J'en suis rendu a faire un script qui s'occupe de créer cette procédure en tant qu'administrateur, et un autre script qui s'occupe de la supprimer toujours en administrateur (solution non satisfaisant ?).
Pour la création vous pouvez le faire en temps que A
mais pour sa suppression il faut être soit A ou SYSDBA. Donc si vous êtes A et que vous voulez supprimer une PS appartenant à B, ce n'est pas possible.
Pourquoi créez vous les PS dynamiquement ?
ca je m'en douteEnvoyé par Sitting Bull
![]()
Mais pourquoi ne pas en faire un par situation ?
Ou si vous ne pouvez pas ennumérer toutes les situations pourquoi faire une PS et pas tout simplement du SQL ?
Partager