Соглашения о синтаксисе Transact-SQL (Transact-SQL)

Применимо к: SQL Server Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse Analytics AnalyticsPlatform System (PDW)Конечная точка SQL в хранилище Microsoft Fabricв Microsoft Fabric

В следующей таблице перечислены и описаны соглашения, используемые в синтаксических схемах в справочнике по Transact-SQL.

Обозначение Используется для
Прописные буквы Ключевые слова Transact-SQL.
курсив Пользовательские параметры синтаксиса Transact-SQL.
полужирный Имена баз данных типов, таблиц, столбцов, индексов, хранимых процедур, программ, типов данных и текст должны вводиться в точном соответствии с примером.
| (вертикальная черта) Разделяет элементы синтаксиса внутри квадратных или фигурных скобок. Может быть использован только один из этих элементов.
[ ] (квадратные скобки) Необязательный элемент синтаксиса.
{ } (фигурные скобки) Обязательные элементы синтаксиса. Фигурные скобки не вводятся.
[ , ... n ] Указывает на то, что предшествующий элемент можно повторить n раз. Отдельные вхождения элемента разделяются запятыми.
[ ... n ] Указывает на то, что предшествующий элемент можно повторить n раз. Отдельные вхождения элемента разделяются пробелами.
; Признак конца инструкции Transact-SQL. Хотя точка с запятой не требуется для большинства инструкций в этой версии SQL Server, этот символ станет обязательным в будущей версии.
Имя синтаксического блока. Используйте это соглашение для группирования и маркировки сегментов с длинным синтаксисом или элемента синтаксиса, который может использоваться в нескольких расположениях в пределах одной инструкции. Каждое расположение, в котором может быть использован синтаксический блок, обозначается меткой, заключенной в шевроны: <label>.

Набор представляет собой коллекцию выражений, например <grouping set>; а список — коллекцию наборов, например <composite element list>.

Многокомпонентные имена

Если не указано иное, все ссылки Transact-SQL на имена объектов базы данных могут быть четырехсоставными именами, записываемыми в следующей форме.

server_name.[database_name].[schema_name].object_name

| database_name.[schema_name].object_name

| schema_name.object_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_name. database_name. schema_name. object_name Четырехчастное имя.
server_name. database_name.. object_name Имя схемы пропущено.
server_name.. schema_name. object_name Имя базы данных пропущено.
server_name... object_name Имя базы данных и имя схемы пропущены.
database_name. schema_name. object_name Имя сервера пропущено.
database_name.. object_name Имя сервера и имя схемы пропущены.
schema_name.object_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.

Многие примеры кода префиксировать символьные константы Юникода буквой N. N Без префикса строка преобразуется в кодовую страницу базы данных по умолчанию. Кодовая страница по умолчанию может не распознавать определенные символы.

Ссылки "Относится к"

Справочные статьи по Transact-SQL охватывают несколько версий SQL Server, начиная с SQL Server 2008 (10.0.x), а также базы данных Azure SQL, Управляемый экземпляр SQL Azure, Azure Synapse Analytics и Analytics Platform System (PDW).

В верхней части каждой статьи есть раздел, где указано, к каким продуктам относится тема статьи. Если продукт не указан, то компонент, описанный в статье, для данного продукта недоступен.

К продукту относится общая тема статьи, но в некоторых случаях не все аргументы поддерживаются. Например, пользователи автономной базы данных впервые появились в SQL Server 2012 (11.x). CREATE USER Используйте оператор в любом SQL Server продуктеWITH PASSWORD, однако синтаксис нельзя использовать в более старых версиях. Дополнительные разделы Область применения вставляются в описания соответствующих аргументов в статье.

См. также раздел