2011-05-20 1 views
0

existants Nous souhaitons laisser les utilisateurs créer leurs propres vues personnalisées, mais ne veulent pas les laisser modifier les tables ou les vues existantes. Je suis assez vert en ce qui concerne les capacités d'administration de SQL Server, mais je suppose que c'est un scénario commun.SQL Server: Laisser l'utilisateur créer/modifier de nouvelles vues, mais ne pas modifier

Je pensais que la meilleure façon de le faire serait de créer un nouveau schéma pour contenir ces vues, et ensuite laisser seulement l'utilisateur avoir le contrôle sur ce schéma. Est-ce raisonnable?

Le problème est que je ne connais pas la mécanique pour le faire. J'ai créé le schéma et j'ai essayé de créer un rôle pour ce schéma, mais ce n'est pas un "clic" dans mon esprit.

+2

Probablement pas destiné à être étiqueté sql-server-200 –

+0

grâce Cade, mis à jour – anonymous

Répondre

1

Je ne suis pas sûr de la version de SQL Server que vous utilisez? Mais en 2008, Open SQL Server Management Studio. Créer une nouvelle procédure, et ajouter ce code:

 
GRANT CREATE VIEW ON SCHEMA :: your_schema TO user_role 

Je pense que cela devrait fonctionner ...? Je n'utilise que SQL Server de temps en temps. Vous devrez peut-être leur donner ALTER, SELECT, etc.

+0

2008 R2 Express pour être exact ... Lemme essayer cela – anonymous

+1

Selon BOL, « Nécessite l'autorisation CREATE VIEW dans la base de données et l'autorisation ALTER sur le schéma dans lequel la vue est créée "sont les autorisations requises pour créer une vue. –

+0

Les choses cliquent maintenant. Comme Ben l'a fait remarquer, je ne pouvais pas obtenir 'CREATE VIEW' pour travailler sur un niveau de schéma mais j'étais capable de comprendre que nous avions deux niveaux sur lesquels travailler ... Base de données et schéma. J'ai un exemple simple de travail et je pense que je pourrais comprendre pourquoi: p merci à tous – anonymous

Questions connexes