Partager via


MSSQLSERVER_208

Détails

Nom du produit

SQL Server

Version du produit

10.0

Numéro de build du produit

 

ID de l'événement

208

Source de l'événement

MSSQLSERVER

Composant

SQLEngine

Nom symbolique

SQ_BADOBJECT

Texte du message

Nom d'objet « %.*ls » non valide.

Explication

L'objet spécifié est introuvable.

Causes possibles

Cette erreur peut être causée par l'un des problèmes suivants :

  • L'objet n'est pas correctement spécifié.

  • L'objet n'existe pas dans la base de données actuelle ou dans la base de données spécifiée.

  • L'objet existe, mais n'a pas pu être exposé à l'utilisateur. Par exemple, l'utilisateur n'a pas d'autorisations sur l'objet ou l'objet est créé dans une instruction EXECUTE, mais l'accès à cet objet s'effectue en dehors de la portée de l'instruction EXECUTE.

Action de l'utilisateur

Vérifiez les informations suivantes et corrigez l'instruction comme il convient.

  • Le nom de l'objet est correctement orthographié.

  • Le contexte de la base de données actuelle est correct. Si aucun nom de base de données n'est spécifié pour l'objet, celui-ci doit exister dans la base de données actuelle. Pour plus d'informations sur la définition du contexte de la base de données, consultez USE (Transact-SQL).

  • L'objet existe dans les tables système. Pour vérifier qu'une table ou un autre objet orienté schéma existe, interrogez l'affichage catalogue sys.objects. Si l'objet ne se trouve pas dans les tables système, cela signifie qu'il a été supprimé ou que l'utilisateur ne dispose pas d'autorisations pour afficher les métadonnées de l'objet. Pour plus d'informations sur les autorisations qui permettent d'afficher les métadonnées d'un objet, consultez Configuration de la visibilité des métadonnées.

  • L'objet est contenu dans le schéma par défaut de l'utilisateur. Si ce n'est pas le cas, l'objet doit être spécifié en respectant le format en deux parties nom_schéma.nom_objet. Pour plus d'informations sur les schémas, consultez Séparation du schéma et de l'utilisateur. Notez que les fonctions scalaires doivent toujours être appelées à l'aide, au moins, du nom en deux parties.

  • Respect de la casse du classement de base de données.

    Lorsqu'une base de données utilise un classement respectant la casse, la casse du nom de l'objet doit être identique à celle qui est utilisée dans la base de données. Par exemple, lorsqu'un objet est spécifié en tant que MyTable dans une base de données avec classement respectant la casse, les requêtes qui font référence à l'objet en tant que mytable ou Mytable retournent l'erreur 208, car les noms de l'objet ne sont pas considérés comme étant identiques.

    Vous pouvez vérifier le classement de base de données en exécutant l'instruction suivante :

    SELECT collation_name FROM sys.databases WHERE name = 'database_name';
    

    L'abréviation CS dans le nom du classement indique que celui-ci respecte la casse. Par exemple, Latin1_General_CS_AS indique un classement qui respecte la casse et les accents. CI indique un classement qui ne respecte pas la casse.

  • L'utilisateur a l'autorisation d'accéder à l'objet. Pour vérifier les autorisations de l'utilisateur sur l'objet, utilisez la fonction système Has_Perms_By_Name.