sql-server - identificadores - identifier sql server




Qual é o uso dos colchetes[] em declarações sql? (6)

Eu observei que o Visual Studio 2008 está colocando colchetes ao redor dos nomes das colunas no sql. Os suportes oferecem alguma vantagem? Quando eu entrego o código T-SQL, eu nunca me incomodei com eles.

Exemplo: Visual Studio: SELECT [column1], [column2] etc ...

Meu próprio caminho: SELECT column1, column2 etc ...


Acredito que os adiciona lá para consistência ... eles só são necessários quando você tem um espaço ou um caractere especial no nome da coluna, mas é mais limpo apenas incluí-los o tempo todo quando o IDE gera SQL.


Além disso, alguns bancos de dados do SharePoint contêm hífens em seus nomes. Usando colchetes em instruções SQL permitem que os nomes sejam analisados ​​corretamente.


Eles são úteis se suas colunas tiverem os mesmos nomes que as palavras-chave SQL ou tiverem espaços nelas.

Exemplo:

create table test ( id int, user varchar(20) )

Ah não! Sintaxe incorreta perto da palavra-chave 'usuário'. Mas isso:

create table test ( id int, [user] varchar(20) )

Funciona bem.


Eles são úteis se você (por algum motivo) usar nomes de colunas com determinados caracteres, por exemplo.

Select First Name From People

não funcionaria, mas colocar colchetes ao redor do nome da coluna funcionaria

Select [First Name] From People

Em suma, é uma forma de declarar explicitamente um nome de objeto; coluna, tabela, banco de dados, usuário ou servidor.


Os colchetes podem ser usados ​​quando os nomes das colunas são palavras reservadas.

Se você estiver programaticamente gerando a instrução SQL a partir de uma coleção de nomes de coluna que você não controla, evite problemas usando sempre os colchetes.


Os colchetes são necessários se você usar palavras-chave ou caracteres especiais nos nomes ou identificadores das colunas. Você poderia nomear uma coluna [First Name] (com um espaço) - mas você precisaria usar colchetes toda vez que se referisse a essa coluna.

As ferramentas mais recentes as adicionam em todos os lugares, apenas por precaução ou por motivos de consistência.





syntax