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

適用于:SQL ServerAzure SQL資料庫Azure SQL 受控執行個體Azure Synapse Analytics AnalyticsPlatform System (PDW)

下表列出並描述 Transact-SQL 參考語法圖表中使用的慣例。

慣例 用於
大寫 Transact-SQL 關鍵字。
斜體 Transact-SQL 語法的使用者提供參數。
粗體字 請完全依照顯示的方式鍵入資料庫名稱、資料表名稱、資料行名稱、索引名稱、預存程序、公用程式、資料類型名稱和文字。
| (分隔號) 加上括號或大括號來分隔語法項目。 您只可以選擇其中一個項目。
[ ] (方括號) 選擇性語法專案。
{ } (大括號) 必要的語法項目。 不要鍵入大括弧。
[ , ...n ] 指出先前項目可以重複 n 次。 以逗號分隔項目。
[ ...n ] 指出先前項目可以重複 n 次。 以空白分開各次出現項目。
; Transact-SQL 語句結束字元。 雖然此版本SQL Server中大部分語句不需要分號,但未來版本會需要此分號。
語法區塊的名稱。 針對冗長語法的區段,或可用於陳述式中多個位置的語法單位,請使用這個慣例進行分組與標示。 您可以使用語法區塊的每個位置,以標籤括住的標籤: < label > 來表示。

集合是運算式的集合,例如 < 群組集 > ;清單是集合集合,例如 < 複合專案清單 > 。

多部分名稱

除非另有指定,否則資料庫物件名稱的所有 Transact-SQL 參考都可以是下列格式的四部分名稱:

server_name。[database_name]。[schema_name]。object_name

| database_name。[schema_name]。object_name

| schema_nameobject_name

| object_name

  • server_name

    指定連結伺服器名稱或遠端伺服器名稱。

  • database_name

    指定物件位於本機實例SQL Server時,SQL Server資料庫的名稱。 當物件是在連結伺服器中時,database_name 會指定一個 OLE DB 目錄。

  • schema_name

    指定如果物件位於SQL Server資料庫中,則包含 物件的架構名稱。 當物件是在連結伺服器中,schema_name 會指定一個 OLE DB 結構描述名稱。

  • object_name

    指向物件名稱。

參考特定物件時,您不一定必須指定SQL Server Database Engine 的伺服器、資料庫和架構來識別物件。 不過,如果找不到物件,就會傳回錯誤。

若要避免名稱解析錯誤,我們建議您每當指定結構描述範圍的物件時,都要指定結構描述名稱。

若要省略中繼節點,請利用句點來表示這些位置。 下表顯示物件名稱的有效格式。

物件參考格式 描述
server_namedatabase_nameschema_nameobject_name 四部分名稱。
server_namedatabase_name..object_name 省略結構描述名稱。
server_name..schema_nameobject_name 省略資料庫名稱。
server_name...object_name 省略資料庫和結構描述名稱。
database_nameschema_nameobject_name 省略伺服器名稱。
database_name..object_name 省略伺服器和結構描述名稱。
schema_nameobject_name 省略伺服器和資料庫名稱。
object_name 省略伺服器、資料庫和結構描述名稱。

程式碼範例慣例

除非另有說明,否則 Transact-SQL 參考中提供的範例是使用下列選項的SQL Server Management Studio及其預設設定進行測試:

  • ANSI_NULLS
  • ANSI_NULL_DFLT_ON
  • ANSI_PADDING
  • ANSI_WARNINGS
  • CONCAT_NULL_YIELDS_NULL
  • QUOTED_IDENTIFIER

Transact-SQL 參考中的大部分程式碼範例都已在執行區分大小寫排序次序的伺服器上進行測試。 測試伺服器通常都是執行 ANSI/ISO 1252 字碼頁。

許多程式碼範例會在 Unicode 字元字串常數前面加上字母 N 。 如果沒有前置 N 詞,字串會轉換成資料庫的預設字碼頁。 這個預設字碼頁可能無法辨識特定字元。

「適用於」參考

Transact-SQL 參考文章包含多個版本的 SQL Server,從 SQL Server 2008 (10.0.x) 開始,以及 Azure SQL Database、Azure SQL 受控執行個體、Azure Synapse Analytics 和 Analytics Platform System (PDW) 。

在每個文章頂端附近,都有一個章節指出支援該文章主題的產品。 如果未列出產品,即表示文章描述的功能不適用於該產品。

文章的一般主題可能適用於某產品,但在某些情況下並非所有的引數都受支援。 例如,自主資料庫使用者是在 2012 SQL Server 2012 (11.x) 引進。 CREATE USER在任何SQL Server產品中使用 語句,不過 WITH PASSWORD 語法無法與舊版搭配使用。 文章本文會於適當引數描述中插入額外的<適用對象> 一節。

另請參閱