MSSQLSERVER_208
適用於:SQL Server
詳細資料
屬性 | 值 |
---|---|
產品名稱 | SQL Server |
事件識別碼 | 208 |
事件來源 | MSSQLSERVER |
元件 | SQLEngine |
符號名稱 | SQ_BADOBJECT |
訊息文字 | 無效的物件名稱 '%.*ls'。 |
說明
找不到指定的物件。
可能的原因
此錯誤可能是下列其中一個問題所造成:
物件未正確指定。
物件不存在於目前資料庫或指定的資料庫中。
物件存在,但無法向用戶公開。 例如,使用者可能沒有對象的許可權,或者物件是在EXECUTE語句內建立,但在EXECUTE語句範圍之外存取。
使用者動作
請確認下列資訊,並適當地更正 語句。
物件名稱拼字正確。
目前的資料庫內容正確。 如果未指定對象的資料庫名稱,對象必須存在於目前資料庫中。 如需設定資料庫內容的詳細資訊,請參閱 USE (Transact-SQL) 。
物件存在於系統數據表中。 若要確認數據表或其他架構範圍物件是否存在,請查詢 sys.objects 目錄檢視。 如果物件不在系統數據表中,對象已經刪除,或使用者沒有檢視物件元數據的許可權。 如需檢視物件元數據之許可權的詳細資訊,請參閱 元數據可見性組態。
物件包含在用戶的預設架構中。 如果不是,則必須使用兩部分格式 來指定 物件,schema_name.object_name。 請注意,純量值函式必須一律使用至少兩部分的名稱來叫用。
資料庫定序的區分大小寫。
當資料庫使用區分大小寫的定序時,物件名稱必須符合資料庫中物件的大小寫。 例如,當物件在具有區分大小寫定序的資料庫中指定為 MyTable 時,將對象 稱為 mytable 或 Mytable 的查詢會導致錯誤 208 傳回,因為物件名稱不相符。
您可以執行下列語句來驗證資料庫定序。
SELECT collation_name FROM sys.databases WHERE name = 'database_name';
定序名稱中的縮寫 CS 表示定序區分大小寫。 例如,Latin1_General_CS_AS區分大小寫、區分腔調的定序。 CI 表示不區分大小寫的定序。
用戶有權存取物件。 若要驗證使用者對物件的許可權,請使用 Has_Perms_By_Name 系統函式。
另請參閱
USE (Transact-SQL)
元數據可見性設定
HAS_PERMS_BY_NAME (Transact-SQL)