locked
Remover espaços em brancos ou pontos em colunas usando o Isql RRS feed

  • Pergunta

  •  

    Olá pessoal,

     

    Estou com um probleminha.

     

    Usando o sqlcmd do SQL server 2005, basta usar o para -W (maiusculo) para remover os espaços em excesso e pontos que tiver na coluna de uma tabela.

     

    Mas como o servidor de aplicação tem apenas o SQL Server 2000, só é possivel usar o isql.exe, mas o parâmetro -W nao é suportado. O que posso fazer para substituitir esse parâmetro?

     

    Abraços

     

    Rui

    quinta-feira, 24 de janeiro de 2008 09:38

Todas as Respostas

  • Vc. quer remover os espacos em branco de um campo ?, o osql nem o isql tem uma opcao equivalente ao -W.

     

    Abs;

    quinta-feira, 24 de janeiro de 2008 10:18
  • Rui,

     

    No OSQL ou ISQL também existe este parâmetro.

     

    Mas você esta querendo eliminar os espaços em branco existente no valores armazenados dentro do campo?

     

    Se você deseja remover espaços em branco existente em um campo, o SQL Server possui funções string para realizar este tipo de operação.

     

    LTRIM --> remove espaços a esquerda.

     

    RTRIM --> remove espaços a direita.

     

    Uma possibilidade seria utilizar a função Replace para fazer a troca do espaço em branco.

    quinta-feira, 24 de janeiro de 2008 10:25
    Moderador
  •  

    Rui,

     

    Realmente, no ISQL ou OSQL, você não vai encontrar o parâmetro.

     

    O único presente é o -w (minúsculo), para definição de tamanho, e só.

     

    Então, a solução do Jr. parece ser a melhor mesmo. Use o LTRIM e RTRIM.

     

     

    Abraço!!!

    quinta-feira, 24 de janeiro de 2008 11:05
  • Olá Pessoal,

     

    Isso, eu queria remover os espaços em branco em excesso de uim determinado campo, ja com os registros cadastrados.

     

    Os parametros LTRIM e RTRIM funcionam também no isql?

     

    Desculpe a pergunta é que na parte de SQL estou muito por fora mesmo.

     

    Abraços

     

    Rui

    quinta-feira, 24 de janeiro de 2008 22:49
  •  

    Oi Rui,

     

    Você pode fazer assim, exemplo:

     

    OSQL -S Server -U Login -P Senha -Q "SELECT LTRIM(RTRIM(CampoDaTabela)) FROM SuaTabela WHERE ..."

     

     

    Esse é um exemplo. O LTRIM tira os espaços em branco do lado esquerdo, o RTRIM do lado direito.

     

     

     

     

    Abraço

    sexta-feira, 25 de janeiro de 2008 00:35
  • Opa Aelxandre,

     

    Eu vou tentar utilizar essa técnica.

     

    Abraços

     

    Rui

    sexta-feira, 25 de janeiro de 2008 10:24
  • Olá Pessoal

     

    Por acaso as funções LTRIM e RTRIM funcionam na hora de inserçao de dados, como o INSERT INTO?

     

    Abraços

     

    Rui

     

    sexta-feira, 25 de janeiro de 2008 21:19
  •  

    Sim.

     

    Exemplo:

     

    INSERT INTO Tabela (Campo1, Campo2) VALUES (LTRIM (RTRIM (@Var1)), LTRIM (RTRIM (@Var2)))

     

    Mas, veja se o tipo de dados está como CHAR ou VARCHAR. No caso do CHAR, é preenchido o restante do campo com espaços em branco até chegar ao tamanho definido.

     

    Abraço!!!

    sexta-feira, 25 de janeiro de 2008 21:41