將識別碼當成物件名稱使用

物件的完整名稱由四個識別碼組成:伺服器名稱、資料庫名稱、結構描述名稱和物件名稱。它們以下列格式顯示:

[ [ [ server. ] [ database ] . ] [ schema_name ] . ] object_name

伺服器、資料庫和擁有者名稱,即所謂的物件名稱限定詞。當您參考物件時,不必指定伺服器、資料庫和擁有者。可以用句點標示限定詞的位置來省略限定詞。物件名稱的有效格式包括:

  • server.database.schema_name.object_name
  • server.database..object_name
  • server..schema_name.object_name
  • server...object_name
  • database.schema_name.object_name
  • database..object_name
  • schema_name.object_name
  • object_name

四個部份的物件名稱全部指定時,即稱為完整名稱。在 Microsoft SQL Server 2005 中建立的每一個物件必須有唯一的完整名稱。例如,在相同資料庫中可以有兩個資料表都叫做 xyz,只要它們的擁有者是不同的。

大部份物件參考均使用三部份名稱。預設值是本機伺服器。四部份名稱通常用於分散式查詢或遠端預存程序呼叫。它們使用下列格式。

linkedserver.catalog.schema.object_name

下表顯示部份名稱及其描述。

部份名稱 描述

linkedserver

連結的伺服器之名稱,其中包含由分散式查詢參考的物件。

catalog

內含分散式查詢參考物件的資料庫目錄 (Catalog) 名稱。

schema

內含分散式查詢參考物件的結構描述 (Schema) 名稱。

object_name

物件名稱或資料表名稱。

若為分散式查詢,四部份名稱的伺服器部份是指連結的伺服器。連結的伺服器是以 sp_addlinkedserver 定義的伺服器名稱。連結的伺服器識別可傳回記錄集的 OLE DB 提供者和 OLE DB 資料來源,Microsoft SQL Server 2005 可使用此記錄集作為 Transact-SQL 陳述式的一部份。

若要決定 OLE DB 資料來源中有哪些元件使用於目錄和名稱的結構描述部份,請參閱該連結的伺服器指定之 OLE DB 提供者的說明文件。如果連結的伺服器執行 SQL Server 的執行個體,則目錄名稱是包含物件的資料庫,且結構描述為物件的擁有者。如需四部份名稱和分散式查詢的詳細資訊,請參閱<分散式查詢>。

對於遠端程序呼叫而言,四部份的名稱中伺服器部份是指遠端伺服器。以 sp_addserver 指定的遠端伺服器是透過本機伺服器存取之 SQL Server 的執行個體。請使用下列格式的程序名稱,在遠端伺服器上執行預存程序:

server.database.schema_name.procedure

使用遠端預存程序時,名稱的四個部份全部都需要。如需遠端伺服器的詳細資訊,請參閱<設定遠端伺服器>。

使用識別碼參考資料行

同一個資料表或檢視中的資料行名稱必須是唯一的。您可以使用最多三個字首在查詢中指定資料行,在這個查詢中,參考的資料表中可以具有名稱相同的資料行。可接受下列任一格式:

database_name.schema_name.object_name.column_name
database_name..object_name.column_name
schema_name.object_name.column_name
object_name.column_name

參考使用者自訂類型資料行的資料行屬性

在資料行名稱和屬性名稱之間使用句點分隔字元 (.),以此方式來參考使用者自訂類型資料行的屬性。參考屬性名稱時,您也可以參考資料表或檢視識別碼,但不能參考資料庫或結構描述識別碼。可接受下列格式:

column_name.property_name1.property_name2…
object_name.column_name.property_name1.property_name2…

請參閱

其他資源

FROM (Transact-SQL)
Transact-SQL 語法慣例 (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助