DBAtlas · Atlas d'exploitation des bases de données

15151: Cannot find the object/principal because it does not exist or you do not have permission (objet/principal introuvable : inexistant ou droits insuffisants)

SQL Server

Que signifie cette erreur ?

L'objet ou le principal de sécurité (utilisateur, rôle, login) référencé n'existe pas, ou vous n'avez pas le droit d'y accéder/d'agir dessus. Pour des raisons de sécurité, SQL Server regroupe les deux cas dans un seul message.

Cause

Utilisation d'un nom d'utilisateur, de rôle, de schéma ou d'objet inexistant dans une commande comme GRANT/ALTER/DROP ; exécution dans le mauvais contexte de base (l'objet se trouve dans une autre base) ; ou absence du privilège requis pour l'opération. Fautes de frappe, casse et préfixes de schéma sont des causes fréquentes.

Comment la corriger

Vérifiez que le nom de l'objet/du principal est correctement orthographié et que vous êtes dans la bonne base. Pour les utilisateurs : SELECT name, type_desc FROM sys.database_principals; pour les objets, interrogez sys.objects. Assurez-vous que le compte d'exécution dispose des droits nécessaires (par ex. ALTER ANY USER, CONTROL). Utilisez le bon préfixe de schéma (comme dbo.object).

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur