MSSQLSERVER_208

platí pro:SQL Server

Podrobnosti

Attribute Value
Název produktu SQL Server
ID události 208
Zdroj události MSSQLSERVER
Součást SQLEngine
Symbolický název SQ_BADOBJECT
Text zprávy Neplatný název objektu '%.*ls'.

Explanation

Specifikovaný objekt nelze najít.

Možné příčiny

Tato chyba může být způsobena jedním z následujících problémů:

  • Objekt není správně specifikován.

  • Objekt neexistuje v aktuální databázi ani ve specifikované databázi.

  • Objekt existuje, ale uživatel ho nemůže zpřístupnit. Například uživatel nemusí mít oprávnění k objektu nebo je objekt vytvořen v rámci příkazu EXECUT, ale přístupný mimo rozsah příkazu EXECUT.

Uživatelská akce

Ověřte následující informace a podle potřeby opravte tvrzení.

  • Název objektu je napsán správně.

  • Současný databázový kontext je správný. Pokud není specifikován název databáze objektu, objekt musí existovat v aktuální databázi. Pro více informací o nastavení databázového kontextu viz USE (Transact-SQL).

  • Objekt existuje v systémových tabulkách. Pro ověření, zda existuje tabulka nebo jiný objekt se schématem zaměřený, dotazujte se do katalogu sys.objects . Pokud objekt není v systémových tabulkách, byl smazán nebo uživatel nemá oprávnění zobrazit metadata objektu. Pro více informací o oprávněních k zobrazení metadat objektů viz Konfigurace viditelnosti metadat.

  • Objekt je obsažen ve výchozím schématu uživatele. Pokud ne, objekt musí být specifikován pomocí dvoudílného formátu schema_name.object_name. Všimněte si, že skalární funkce musí být vždy vyvolány alespoň dvoudílným jménem.

  • Citlivost na velikost písmen při kolaci databáze.

    Když databáze používá sortaci rozlišující písmena, musí název objektu odpovídat pádu objektu v databázi. Například když je objekt v databázi s velikostí a podobnou kolací specifikován jako MyTable , dotazy, které označují objekt jako mytable nebo Mytable , způsobí vrácení chyby 208, protože názvy objektů se neshodují.

    Databázovou kolaci můžete ověřit spuštěním následujícího příkazu.

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

    Zkratka CS v názvu kolace znamená, že kolace je rozlišující velká písmena. Například Latin1_General_CS_AS je kolace citlivá na velká písmena a akcent. CI označuje kolaci necitlivou na velké a závažné případy.

  • Uživatel má oprávnění k přístupu k objektu. Pro ověření oprávnění, která má uživatel k objektu, použijte funkci Has_Perms_By_Name system.