Convenções da sintaxe Transact-SQL (Transact-SQL)

Aplica-se a: simSQL Server (todas as versões compatíveis) SimBanco de Dados SQL do Azure SimInstância Gerenciada do Azure SQL simAzure Synapse Analytics simParallel Data Warehouse

A tabela a seguir lista e descreve as convenções usadas nos diagramas de sintaxe na Referência Transact-SQL.

Convenção Usado para
LETRAS MAIÚSCULAS Palavras-chave Transact-SQL.
italic Parâmetros de sintaxe Transact-SQL fornecidos pelo usuário.
bold Digite os nomes dos bancos de dados, nomes de tabela, nomes de coluna, nomes de índices, procedimentos armazenados, utilitários, nomes de tipo de dados e texto exatamente como exibidos.
underline Indica o valor padrão aplicado quando a cláusula que contém o valor sublinhado é omitida da instrução.
| (barra vertical) Separa itens de sintaxe que se encontram entre colchetes ou entre chaves. Você pode usar só um dos itens.
[ ] (colchetes) Itens de sintaxe opcionais. Não digite os colchetes.
{ } (chaves) Itens de sintaxe exigidos. Não digite os colchetes.
[ , ...n] Indica que o item precedente pode ser repetido n vezes. As ocorrências são separadas por vírgulas.
[...n] Indica que o item precedente pode ser repetido n vezes. As ocorrências são separadas por espaços em branco.
; Terminador de instrução do Transact-SQL. Embora o ponto e vírgula não seja necessário para a maioria das instruções nesta versão do SQL Server, ele será necessário em uma versão futura.
<label> ::= O nome de um bloco de sintaxe. Use essa convenção para agrupar e rotular seções de sintaxe extensa ou uma unidade de sintaxe que pode ser usada em mais de um local dentro de uma instrução. Cada local no qual o bloco de sintaxe pode ser usado é indicado com o rótulo entre divisas: <label>.

Um conjunto é uma coleção de expressões, por exemplo, <grouping set>; e uma lista é uma coleção de conjuntos, por exemplo, <composite element list>.

Nomes de partes múltiplas

A menos que especificado de outra forma, todas as referências Transact-SQL ao nome de um objeto de banco de dados podem ser um nome de quatro partes, do seguinte modo:

servidor_nome.[bancodedados_nome].[esquema_nome].objeto_nome

| bancodedados_nome.[esquema_nome].objeto_nome

| esquema_nome.objeto_nome

| object_name

server_name
Especifica um nome de servidor vinculado ou remoto.

bancodedados_nome
Especifica o nome de um banco de dados SQL Server quando o objeto reside em uma instância local de SQL Server. Quando o objeto está em um servidor vinculado, database_name especifica um catálogo OLE DB.

esquema_nome
Especifica o nome do esquema que contém o objeto, se o objeto estiver em um banco de dados SQL Server. Quando o objeto está em um servidor vinculado, schema_name especifica um nome de esquema OLE DB.

objeto_nome
Refere-se ao nome do objeto.

Quando se refere a um objeto específico, nem sempre é preciso especificar o servidor, o banco de dados e o esquema para que Mecanismo de Banco de Dados do SQL Server identifique o objeto. Porém, se o objeto não puder ser encontrado, um erro será retornado.

Observação

Para evitar erros de resolução de nome, recomendamos especificar o nome de esquema sempre que você especificar um objeto no escopo do esquema.

Para omitir nós intermediários, use pontos para indicar essas posições. A tabela a seguir mostra os formatos válidos de nomes de objetos.

Formato de referência de objeto Descrição
servidor.bancodedados.esquema.objeto Nome de quatro partes.
servidor.bancodedados..objeto O nome do esquema é omitido.
servidor..esquema.objeto O nome do banco de dados é omitido.
servidor...objeto Os nomes do banco de dados e do esquema são omitidos.
bancodedados.esquema.objeto O nome do servidor é omitido.
bancodedados..objeto Os nomes do servidor e do esquema são omitidos.
esquema.objeto Os nomes do servidor e do banco de dados são omitidos.
object Os nomes do servidor, do banco de dados e do esquema são omitidos.

Convenções de exemplo de código

Salvo indicação em contrário, os exemplos fornecidos na Referência do Transact-SQL foram testados usando SQL Server Management Studio e suas configurações padrão para as seguintes opções:

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

A maioria dos exemplos de código na Referência do Transact-SQL foi testada em servidores executando uma ordem de classificação com diferenciação de maiúsculas e minúsculas. Os servidores de teste executaram, normalmente, a página de código ANSI/ISO 1252.

Muitos exemplos de código incluem um prefixo em constantes de cadeia de caracteres Unicode com a letra N. Sem o prefixo N, a cadeia de caracteres é convertida na página de código padrão do banco de dados. Essa página de código padrão pode não reconhecer certos caracteres.

Referências de "Aplica-se a"

A referência Transact-SQL inclui artigos relacionados ao SQL Server (SQL Server 2008 e posterior), Banco de Dados SQL do Azure e Azure Synapse Analytics.

Existe uma seção na parte superior de cada artigo indicando quais produtos são compatíveis com o assunto do artigo. Se um produto for omitido, o recurso descrito pelo artigo não estará disponível para esse produto. Por exemplo, os grupos de disponibilidade foram introduzidos no SQL Server 2012 (11.x). O artigo CREATE AVAILABILITY GROUP indica que ele se aplica ao SQL Server (SQL Server 2012 (11.x) e posterior), pois não se aplica ao SQL Server 2008, ao SQL Server 2008 R2 nem ao Banco de Dados SQL do Azure.

O assunto geral do artigo pode ser usado em um produto, mas em alguns casos não há suporte para todos os argumentos. Por exemplo, os usuários do banco de dados independente foram introduzidos no SQL Server 2012 (11.x). Use a instrução CREATE USER em qualquer produto SQL Server; no entanto, a sintaxe WITH PASSWORD não pode ser usada com versões anteriores. As seções Aplica-se a adicionais são inseridas em descrições de argumento apropriadas no corpo do artigo.

Consulte Também

Referência do Transact-SQL (Mecanismo de Banco de Dados)
Palavras-chave reservadas (Transact-SQL)
Problemas de design do Transact-SQL
Problemas de nomenclatura do Transact-SQL
Problemas de desempenho do Transact-SQL