quarta-feira, 23 de julho de 2008

zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz







precisa eu dizer mais?

deixa p próximo post... to com preguiça...

zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz


:o

sábado, 12 de julho de 2008

Comercial Lindo Demais!!!!!!!!

Olhinhos do guaraná!! ^^



Letra pra quem quer acompanhar

I gotta take a little time,
A little time to think things over
In my life
There's been heartache and pain
To change this lonely life
I wanna know what love is,
I want you to show me

sexta-feira, 4 de julho de 2008

Apple X Dell

Que lindo!!!!!!!! ^^



A dell tmb tentou colocar o computador deles dentro de um envelope....uahuAHuhuahuAHuahuHAUhau



terça-feira, 1 de julho de 2008

Transações em banco de dados postgres no PHP



Hoje tive que fazer um trabalho em sistemas distribuídos e que representasse alguma coisa sobre confiabilidade, atomicidade etc...

Resolvi utilizar transações em banco de dados... e não é que o troço funciona mesmo!?!?!
hauhauhaua :P

Explicando...
Transações:
Um bloco de transação inicia-se com a declaração SQL BEGIN e, se a transação for válida, termina com COMMIT ou END. Se a transação falhar, ela deve ser fechada com ROLLBACK ou ABORT.
Geralmente se usa transações quando se faz necessário que todas as query's dentro do bloco da transação sejam executadas em conjunto e que não existam falhas...ou seja... caso exista uma falha a transação que finaliza com Rollback desfaz a execução das query's que estão no bloco. Caso todas sejam executadas sem problemas daí o commit se encarrega de finalizar as execuções com atomicidade e sucesso! ;)

OBS.: Agradecimentos ao Edgar Gabaldi que me deu a dica de como fazer o html se comportar no blog... hehehe

Exemplo resumido:

começa assim

//iniciando a transação
pg_query ($conexao_do_banco, "begin");

//aqui você coloca as query's que você quer que execute em conjunto...
$query=("select * from tabela");
$execute=pg_exec($conexa_do_banco,$query);

$query_dois=("select * from tabela2");
$execute_dois=pg_exec($conexa_do_banco,$query_dois);

$query_tres=("insert into tabela2 valor=$valor");
$execute_tres=pg_exec($conexa_do_banco,$query_tres);

if(($execute)&&($execute_dois)&&($execute_tres)){
pg_query ($conexao_do_banco, "commit");
print "depositado com sucesso";
}else{
pg_query ($conexao_do_banco, "rollback");
pg_close($conexao_do_banco);
print "Ops! Problemas!";
}


Como você pode ver se todas as execuções forem executadas com sucesso então "commit" é executado senão executa "rollback" e nenhuma das query's dentro do bloco são finalizadas ou concretizadas...

Espero que ajude alguém ;)
Banco de dados é divertido!

P.S.: Passei com A na Banca =D
Mas ainda tenho 2 provas pela frente... =/