Gerando número aleatório no SQL SERVER

por Fernando D'Angelo 9. outubro 2010 15:22

Aqui vai uma dica interessante:

Encontrei na WEB uma função interessante para gerar números aletórios no SQL SERVER. Me pareceu que gerou números mais aleatórios do que utilizar somente a função RAND() ou a função NEWID(). A função é RAND(CHECKSUM(NEWID( ))) 

Segue exemplo:

SELECT COD_USUARIO, RAND(CHECKSUM(NEWID( ))) AS ORDEM FROM USUARIOS ORDER BY ORDEM

 

Até a próxima.

Fernando D'Angelo



Curso de Férias - FEI - 2010 - Conclusão de Curso

por Thiago Nishio 2. agosto 2010 15:34


Curso de Desenvolvimento Web: Novas turmas

por Massami 12. julho 2010 19:24

Salve galera,

Atenção as novas datas para o curso de Desenvolvimento Web:

Datas: 23 à 27/08

Horário: 18:30 às 22:30

Valor: De R$ 650,00 Por R$ 300,00
(preço promocional de inauguração)

Pré-requisitos:

- Conhecimentos básicos de HTML
- Lógica de programação
- Experiência com internet

Conteúdo:

  • Conceitos de desenvolvimento para internet;
  • Páginas estáticas (estrutura, estilos...);
  • Páginas dinâmicas;
  • Conhecendo o Visual WebDeveloper Express 2010;
  • Introdução à Programação Orientada a Objetos;
  • Programação Microsoft ASP.NET 3.5 com C#;
  • Introdução a Banco de Dados MS SQL SERVER;
  • Construindo páginas dinâmicas com Banco de Dados.

Mais informações em http://www.aspbrasiltecnologia.com.br ou ligue (11) 4123-7041

Os cursos são ministrados no Espaço Italo Setti. Para conhecer melhor o espaço, acesse o site www.espacoitalosetti.com.br.


Ferramenta de geração de script INSERT para dados contidos em SQLSERVER 2005

por Fernando D'Angelo 11. março 2010 09:25

A Microsoft disponibiliza para download gratuito uma ferramenta que permite gerar scripts da estrutura e dos dados de uma base de dados SQLSERVER 2005.

Essa ferramenta é extremamente útil em uma migração ou publicação de sites, por exemplo.

Ela permite:

 

1) Gerar script de toda a estrutura da base de dados (tabelas, user datatypes, constraints, pks, stored procedures, ...)

2) Gerar script de INSERT para todos os dados armazenados nesta base

 

Abaixo, o link para Download

 

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=56e5b1c5-bf17-42e0-a410-371a838e570a

 

Abs,

 

Fernando D'Angelo

Tags: , ,

Banco de Dados



Buscas no SQLSERVER sem distinção de caracteres com acentuação

por Fernando D'Angelo 2. março 2010 08:26

É comum em sites a existência de busca de conteúdo por palavra-chave.

Neste cenário, muitas pessoas quebram a cabeça para fazer com que a busca por palavras ignore a acentuação, ou seja, se o usuário digitar a palavra sem acentuação e no banco de dados ela estiver com acentuação, o sistema deverá encontrar tal registro. O contrário também deve ser válido.

Ao contrário do que muitos imaginam, a não distinção de caracteres com e sem acentuação é uma configuração do SQLSERVER e não é necessário criar métodos no código do site para isto. Basta para isso alterar o COLLATE dos campos de busca para um COLLATE que não faça essa distinção.

O COLLATE padrão do Português-BR no SQLSERVER 2005 é SQL_Latin1_General_CP1_CI_AS, onde o AS significa "Accent Sensitive", ou seja, Sensível à acentuação. Precisamos então alterar o COLLATE para SQL_Latin1_General_CP1_CI_AI, onde o AI significa "Accent Insensitive", ou seja, insensível à acentuação. Esta alteração basta para que a busca funcione corretamente.

No entanto, para complicar um pouco, a base de dados já está criada e com o COLLATE padrão do servidor de hospedagem, que não permite controle total da base de dados.

Assim sendo, não conseguimos ou é muito trabalhoso alterar o COLLATE da base de dados, da tabela ou da coluna.

Uma solução rápida é alterar alterar o COLLATE do campo na própria sintaxe SQL.

Para fazer uma busca em um banco de dados, com LIKE, sem que o sistema faça distinção entre palavras com e sem acento (ex: procurar por "acustica" e achar "acústica"), faça como no exemplo abaixo. É só inserir o COLLATE abaixo na string SQL.


... WHERE TX_NOME  COLLATE SQL_Latin1_General_CP1_CI_AI LIKE  '%acustica%' ...

 

Abs,

 

Fernando D'Angelo

Tags: , ,

Banco de Dados




Calendário

<<  fevereiro 2012  >>
seteququsedo
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

Ver os posts em um calendário maior

Oportunidades


Para divulgar oportunidades aqui, entre em contato conosco enviando a descrição completa da vaga + uma data de validade para cada uma delas.

* As vagas divulgadas neste espaço são de inteira responsabilidade das empresas anunciantes.

Assine Nossa Newsletter

Quero ser notificado quando um novo Post for publicado