terça-feira, 23 de fevereiro de 2016

Recuperando dados de um TIMESTAMP no Postgres

Uma função muito útil do Postgres é a recuperação de dados de um Timestamp, abaixo executamos a extração de dia, mês e ano de um timestamp.

SELECT EXTRACT(DAY FROM TIMESTAMP '2016-02-16 00:15:00');
SELECT EXTRACT(MONTH FROM TIMESTAMP '2016-02-16 00:15:00');
SELECT EXTRACT(YEAR FROM TIMESTAMP '2016-02-16 00:15:00');

Também podemos executar de uma outra forma para obter o mesmo resultado:

SELECT date_part('YEAR', timestamp '2014-04-25 08:44:21');
SELECT date_part('MONTH', timestamp '2014-04-25 08:44:21');
SELECT date_part('DAY', timestamp '2014-04-25 08:44:21');

Criando TRIGGERS no Postgres 9.2

Um dos recursos mais simples de um SGDB e comuns à serem utilizados são as TRIGGERS ou "Gatilhos', estes executam um processo antes ou depois de uma determinada ação no banco de dados. No exemplo abaixo é inserido um registro em uma tabela após uma tabela referente sofrer alteração em seus registros.

O primeiro passo é criar uma função que será executada toda vez que a tabela referente sofrer alteração.

OBS: A variável NEW se trata dos dados que estão vindo da alteração da tabela referente.

CREATE OR REPLACE FUNCTION atualiza_tabela () RETURNS trigger as $registro$
BEGIN
INSERT INTO tabelaX (campo1, campo2, campo3) 
VALUES ( NEW.dado1, NEW.dado12, NEW.dado3,
);

RETURN NEW;
END;
$registro$ LANGUAGE plpgsql;

Agora criamos literalmente a TRIGGER que será acionada toda vez que a tabela referente sofrer alteração, chamando a função que criamos acima.

CREATE TRIGGER TR_atualiza_tabela AFTER INSERT OR UPDATE ON tabela_referente
    FOR EACH ROW EXECUTE PROCEDURE atualiza_tabela();

Fonte: http://www.postgresql.org/docs/9.2/static/plpgsql-trigger.html

quinta-feira, 18 de fevereiro de 2016

Convertendo caracteres no Postgres

Uma função muito útil no PostgresSQL é a conversão de encoding de caracteres de um tipo para outro. No exemplo abaixo desejo converter um caracter que está no tipo LATIN1 para o tipo UTF-8.

SELECT CONVERT_FROM(convert_to('Brotas De Macaúbas', 'LATIN1'), 'UTF-8')

quinta-feira, 7 de janeiro de 2016

Utilizando aplicativos Windows no Linux

Nos dias atuais a utilização do Linux tem crescido muito por parte dos usuários comuns, no entanto alguns aplicativos comuns nativos para windows ainda não tem a versão apropriada para o Linux ou simplesmente não existe. Neste caso pode-se utilizar o aplicativo Wine que se torna uma plataforma para aplicativos Windows rodarem no linux... para efetuar sua instalação é muito simples. Segue códigos de instalação para o Ubuntu.

Primeiro vamos habilitar o uso de aplicativos x86 caso ainda não esteja habilitado:

sudo dpkg --add-architecture i386 

Vamos adicionar o repositório que contém o aplicativo:

sudo add-apt-repository ppa:wine/wine-builds

Vamos atualizar nossa lista de repositórios:

sudo apt-get update

Agora vamos instalar o Wine:

sudo apt-get install --install-recommends winehq-devel

Voilá! agora pode baixar um arquivo .EXE  e para instalar o mesmo neste formato basta cliar com o botão direito sobre o mesmo e mandar executar com o Wine e pronto!!!

terça-feira, 22 de dezembro de 2015

Mantendo a versão do python atualizada - Ubuntu


Uma ferramenta útil que descobri é o pyenv que faz o gerenciamento das versões do python instaladas na sua máquina e permite tornar uma versão global facilmente.. segue os comandos para execução:

1- sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev git







3- após efetuar a instalação caso ainda não existe ele vai emitir um alerta dizendo que algumas configurações do pyenv ainda não existem e que você precisa adicionar no arquivo .bash_profile localizado na home do sistema. Caso este arquivo ainda não existe pode criar e colar as linha citadas por ele para serem adicionadas por ele no terminal.




4- Após isso verifique se o pyenv foi instalado com sucesso executando o código no terminal: pyenv se o mesmo retornar opções disponíveis para o comando o mesmo foi instalado corretamente. O pŕoximo passo é instalar o python mais recente e torná-lo global.




5- A última versão disponível no momento é a 3.5, essa que vamos instalar com o comando: pyenv install 3.5.1




6- Agora você está com a última versão do python, para torná-la global basta executar o comando agora pyenv global 3.5.1 e Voilá! seu python está global e atualizado!




7- Para efetuar o teste basta digitar o mando no terminal python e dar um enter e o mesmo irá apresentar uma tela exibindo a versão atual do python. :)






quinta-feira, 24 de setembro de 2015

Cores hexadecimal randômica com JavaScript

Um script simples mas que pode auxiliar no dia-a-dia é retornar uma simples cor em hexadecimal utilizando javascript.

function randColors() {
    return '#' + (function co(lor) {
        return (lor += [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f'][Math.floor(Math.random() * 16)])
&& (lor.length == 6) ? lor : co(lor);
    })('');
}

sexta-feira, 4 de setembro de 2015

Ping de portas com PAPING

O tão famoso ping não se torna útil na hora de descobrir se uma porta específica se encontra aberta.. para isso precisamos utilizar programas específicos. no exemplo abaixo utilizo o programa PAPING.EXE onde testo a resposta do google.com na porta 80 e recebo os pacotes de retorno.