15138: The database principal owns a schema in the database, and cannot be dropped (le principal de base de données possède un schéma et ne peut pas être supprimé)
SQL ServerQue signifie cette erreur ?
Une tentative de suppression d'un utilisateur/rôle de base de données (database principal) a échoué car le principal possède un ou plusieurs schémas dans la base. Il ne peut pas être supprimé tant que les schémas qu'il possède ne sont pas transférés à un autre principal.
Cause
L'utilisateur à supprimer est OWNER d'au moins un schéma (par ex. un schéma créé par défaut à son nom, ou attribué via AUTHORIZATION). SQL Server bloque la suppression pour ne pas laisser de schémas orphelins.
Comment la corriger
Trouvez les schémas possédés par l'utilisateur : SELECT name FROM sys.schemas WHERE principal_id = USER_ID('app_user'); Transférez la propriété de ces schémas à un autre principal (par ex. dbo) : ALTER AUTHORIZATION ON SCHEMA::[app_schema] TO dbo; Si le schéma n'est plus nécessaire (et qu'il est vide), DROP SCHEMA. Une fois la propriété transférée, exécutez de nouveau DROP USER.
Autres entrées pour ce moteur
- 8651Could not perform the operation because the requested memory grant was not available (opération impossible : l'octroi de mémoire demandé n'était pas disponible)
- 5061ALTER DATABASE failed because a lock could not be placed on database (échec d'ALTER DATABASE : impossible de poser un verrou sur la base)
- 3702Cannot drop database because it is currently in use (impossible de supprimer la base : elle est en cours d'utilisation)
- 1934INSERT/UPDATE failed because the following SET options have incorrect settings (échec d'INSERT/UPDATE : les options SET suivantes sont mal réglées)
- 468Cannot resolve the collation conflict
- 4864Bulk load data conversion error (type mismatch or invalid character) (erreur de conversion lors du chargement en masse : type incompatible ou caractère invalide)
- 916The server principal is not able to access the database under the current security context (le principal serveur ne peut pas accéder à la base dans le contexte de sécurité actuel)