Início > Banco de dados > Funções LEN e DATALENGTH do SQL

Funções LEN e DATALENGTH do SQL

Muito cuidado na hora de utilizar a função “LEN” do SQL. Ela conta a quantidade de caracteres em uma string, mas tira os espaços em branco no final, ou seja, faz um “RTRIM”.
Se você realmente quiser saber o tamanho completo de uma string, utilize o DATALENGTH. Segue a explicação em inglês e o link direto.

——————————-

http://msdn.microsoft.com/en-us/library/ms190329.aspx

If you are writing CHECK constraints or data cleansing functions that scan for leading & trailing spaces. Becareful as LEN will cause you to overlook data containing trailing spaces whereas DATALENGTH will find them.

For Example: the following check constraint will prevent your users from adding data consisting of Leading or Trailing spaces or All Spaces.

    StateCode VARCHAR(3) NOT NULL CHECK (DATALENGTH(LTRIM(RTRIM(StateCode))) = DATALENGTH(StateCode)) — Works

StateCode VARCHAR(3) NOT NULL CHECK (LEN(LTRIM(RTRIM(StateCode))) = LEN(StateCode)) — FAILS, as permits trailing spaces

Unfortunately neither work if you are checking for other whitespace eg: Tabs, due to limitations in SQL’s TRIM functions.

——————————-

Anúncios
Categorias:Banco de dados
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: