sábado, 27 de setembro de 2014

Instalando PostgreSQL e o pgAdmin3 no Ubuntu 14.04 LTS

Olá, Boa Noite Galera...

   Hoje vamos ver como instalar o PostgreSQL no Ubuntu 14.04.
   Então, vamos ao que realmente interessa...

   PostgreSQL ou Postgres, é um sistema de gerenciamento de banco de dados relacional, que fornece uma implementação da linguagem SQL. O Postgres é uma das escolhas mais populares para pequenos, médios e grandes projetos e tem a grande vantagem de ser multiplataforma, rodando tanto em Windows quanto em Linux.
   E hoje vamos ver sua instalação e configuração no Linux (Ubuntu 14.04 LTS).

1º) Vamos primeiramente logar como "root" no terminal e atualizar os repositórios:
   apt-get update

2º) Agora vamos instalar o PostgreSQL:
   apt-get install postgresql

3º) Após concluir a instalação, o próximo passo é alterar a senha do usuário "postgres":
   su postgres -c psql postgres
   ALTER USER postgres WITH PASSWORD 'senha'
   \q

4º) Com o PostgreSQL instalado, agora vamos instalar o pgAdmin3:
   apt-get install pgadmin3

5º) Feito toda a instalação e configuração de senha, o PostgreSQL está pronto para o uso em seu compuador, porém se a ideia é acessar este servidor de banco de dados a partir de outros computadores, precisamos efetuar mais algumas configurações. Para estas configurações precisamos alterar dois arquivos, são eles: postgresql.conf e pg_hba.conf, ambos ficam na pasta /etc/postgresql/9.3/main. 
   No primeiro arquivo "postgresql.conf" remova o "#" e troque "localhost" por "*", conforme abaixo:   
   Antes: #listen_addresses = 'localhost'
   Depois: listen_addresses = '*'

   Ainda no primeiro arquivo temos que habilitar a encriptação de passwords, para isso vamos descomentar a seguinte linha:   
   Antes: #password_encryption = on 
   Depois: password_encryption = on

E finalmente, vamos para a última configuração, no arquivo "pg_hba.conf" vamos adicionar a linha abaixo. É neste arquivo que efetuamos a liberação do acesso para um IP ou uma faixa de IPs, no exemplo abaixo vamos liberar para todas as máquinas da rede 192.168.0.0:
   host all all 192.168.0.0 255.255.255.0 md5

Depois de fazer todo o processo acima, basta reiniciar o PostgreSQL.
   /etc/init.d/postgresql-9.3 restart

Pronto, está concluída a instalação do PostgreSQL.

Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, preencha o Formulário de contato do lado direito da página e nos envie.

Atenciosamente

Dica Chave.

quarta-feira, 27 de agosto de 2014

Renomeando Banco de Dados SQL Server

Olá, Bom Dia Pessoal...

Quem nunca precisou renomear uma base de dados no SQL Server!!!

Aí vai um comando fácil e rápido...

-- Colocamos em uso a Database "master"
  USE [master];
  GO

-- Alteramos nossa Database para o modo usuário único
  ALTER DATABASE database_NAME_OLD SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
  GO

-- Aqui faremos a alteração do nome da database
  ALTER DATABASE database_NAME_OLD
  MODIFY Name = database_NAME_NEW ;
  GO

-- Alteramos nossa Database para o modo multiusuário
  ALTER DATABASE database_NAME_NEW SET MULTI_USER WITH ROLLBACK IMMEDIATE;
  GO

    OBS.: Para fins de compatibilidade, esta dica foi testada no SQL Server 2008. 


Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, preencha o Formulário de contato do lado direito da página e nos envie.

Atenciosamente
Dica Chave.

segunda-feira, 25 de agosto de 2014

Como Alterar o Ponteiro do Mouse em Delphi em tempo de Execução


Olá, Bom Dia à Todos...

Hoje vai uma dica rápida de como alterar o ponteiro do mouse em tempo de execução no Delphi, dica fácil e muito útil.

Então, mãos a obra...

No início do bloco de código que deseja alterar o modo de exibição do ponteiro do mouse, coloque o seguinte  código:

   Screen.Cursor := crSQLWait; //Muda o cursor para a ampulheta de SQL...

   {

   AQUI FICA O SEU BLOCO DE CÓDIGO...
   }

   Screen.Cursor := crDefault; //Volta o cursor para o ponteiro padrão...


    OBS.: Para fins de compatibilidade, esta dica foi escrita usando Delphi XE5. 

    DICA.: Para saber os nomes de cursores disponíveis, basta ir na propriedade "Cursor" de qualquer componente do Form Delphi.


Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, preencha o Formulário de contato do lado direito da página e nos envie.

Atenciosamente
Dica Chave.

quinta-feira, 7 de agosto de 2014

Especificar Campos na Cláusula "DISTINCT" no PostgreSQL

Olá, Boa Noite...

Aqui vai mais uma dica, agora para quem trabalha com PostgreSQL.

Bem, esta dica foi testada no PostgreSQL, não sei se serve para outros SGDBs.

Para quem trabalha, ao menos um pouco com SQL, com certeza já usou e muito a cláusula "distinct", porém na sua forma mais comum de uso:

     select distinct campo_A, campo_B, campo_C, campo_D from minha_Tabela

Mas desta forma não servia para mim, pois eu precisava fazer um "distinct" por somente 02(dois) campos.
Então encontrei na internet uma dica sobre como usar o "Distinct On":

     select distinct on (campo_A, campo_B)
         campo_A, campo_B, campo_C, campo_D from minha_Tabela

Isso faz com que o "distinct" seja feito somente pelos campos "campo_A e campo_B", assim também poderia ser feito com apenas 01(um) ou mais de 02(dois) campos.

OBS.: O único detalhe, é que o(s) campo(s) especificado(s) no "distinct on" DEVE(M) estar entre os campos do "select".

    Fonte.: Esta dica foi baseada em: "http://rodrigomaia.net/2011/03/14/determinar-campos-do-distinct-no-postgres/" e alterado para melhor entendimento.


Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, preencha o Formulário de contato do lado direito da página e nos envie.

Atenciosamente
Dica Chave.

segunda-feira, 14 de julho de 2014

Descobrindo o Nome de Uma Máquina Via Rede Pelo CMD

Olá, Boa Tarde Pessoal...

Depois de mais de um ano fora, estamos novamente aqui para lhe fornecer as melhores dicas para o seu dia-a-dia.

E hoje vamos ver como descobrir o nome de uma máquina via rede pelo CMD do Windows.

Existe um comando muito útil para obter estas informações, bem como algumas outras como por exemplo: "Nome", " IP", Mac Adress", "Dominio/Grupo de Trabalho" que a máquina pertence.

Os Comandos são:
     nbtstat -a [ip da máquina]
e/ou
     nbtstat -a [nome do host]
    OBS. 1: Comandos estes testados em uma máquina usando Windows 8 Pro, juntamente com uma rede Windows.  
    Fonte.: Algum lugar da Internet e alterado para melhor entendimento.


Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, preencha o Formulário de contato do lado direito da página e nos envie.

Atenciosamente
Dica Chave.

quarta-feira, 10 de julho de 2013

Pegar o destino de um atalho do Windows com Delphi

Olá, Boa Tarde Pessoal...
Depois de pesquisar muito na internet, encontrei pouco conteúdo sobre o assunto e resolvi postar aqui.
Nosso assunto hoje será como descobrir o destino de um atalho do windows.

Para que esta função rode corretamente é preciso declarar no uses as seguinte Units "ShellApi, ShlObj, ActiveX, ComObj, Registry" (sem as aspas).

1º - Declare a seguinte função:
   Function PegaDestinoAtalho(const LinkFileName:String):String;

2º - Na área de implementações, implemente-a da seguinte maneira:
   function TForm1.PegaDestinoAtalho(const LinkFileName: String): String;
   var
     psl : IShellLink;
     ppf : IPersistFile;
     Info : Array[0..MAX_PATH] of Char;
     wfs : TWin32FindData;
   begin
     CoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER, IShellLink, psl);
     if psl.QueryInterface(IPersistFile, ppf) = 0 then
     begin
       ppf.Load(PWChar(WideString(LinkFileName)), 0);
       psl.GetPath(@info, MAX_PATH, wfs, SLGP_UNCPRIORITY);
       Result := info;
     end;
   end;

3º - Para utilizar a função, chame-a da seguinte forma:
   // Declare duas variáveis do tipo String ("caminho e destino").
     // "caminho" será o caminho do atalho e 
     // "destino" receberá o destino do atalho.
   caminho := 'C:\Users\usuario\Desktop\atalho.lnk';
   destino := PegaDestinoAtalho(caminho);

    OBS. 1: Em Breve postarei como ler todos os arquivos do tipo "*.lnk" de um determinado diretório.
    OBS. 2: Para fins de compatibilidade, esta dica foi escrita usando Delphi XE3.

    Fonte.: Algum lugar da Internet e alterado para melhor entendimento.

Esta foi a dica de hoje, se for útil, comentem.

Se você tem uma dica interessante, pode postar nos comentários.

Atenciosamente
Dica Chave.

Nome do usuário logado no Windows com Delphi

Olá, Boa Tarde Pessoal...
Hoje vamos ver como saber o nome do usuário logado no Windows com o auxilio do Delphi.

1º - Declare a seguinte função:
   Function NomeUsuario: String;

2º - Na área de implementações, implemente-a da seguinte maneira:
   function TForm1.NomeUsuario: String;
   var
     lpBuffer : Array[0..20] of Char;
     nSize : dWord;
     mRet : boolean;
     erro : dWord;
   begin
     nSize := 120;
     mRet := GetUserName(lpBuffer, nSize);
     if mRet then
     begin
       Result := lpBuffer
     end
     else
     begin
       erro := GetLastError();
       MessageDlg('Ocorreu o erro ' + IntToStr(erro) + ' ao procurar o nome logado no computador.',
                  mtError, [mbOk], 0);
       Result := '';
     end;
   end;

3º - Para utilizar a função, chame-a da seguinte forma:
   nomeDoUsuario := NomeUsuario;

    OBS.: Para fins de compatibilidade, esta dica foi escrita usando Delphi XE3.

    Fonte.: Algum lugar da Internet.

Esta foi a dica de hoje, se for útil, comentem.
Se você tem uma dica interessante, pode postar nos comentários.
Atenciosamente
Dica Chave.