sexta-feira, 7 de fevereiro de 2014

PHP - Classe prática de conexão com Banco de Dados


Garimpando na Web achei o MeekroDB, uma classe PHP muito prática de se utilizar, em apenas 1 arquivo. Com ela você poderá fazer consultas para recuperar apenas uma coluna, consultas de apenas 1 registro, transactions e muitos mais.

Exemplo:
DB::query("SELECT * FROM login WHERE username=%s AND password=%s", $username, $password);

http://www.meekro.com/

terça-feira, 9 de outubro de 2012

PostgreSQL - Função que retorna o custo da query


CREATE OR REPLACE FUNCTION public.getsqlcost(p_sql text) RETURNS numeric AS
$BODY$
DECLARE
v varchar;
BEGIN
-- Result  (cost=0.00..0.01 rows=1 width=0)
EXECUTE 'EXPLAIN ' || p_sql INTO v;
RETURN CAST(split_part(TRIM(SUBSTRING(upper(v) FROM 'COST=(.+) ROWS')), '..', 2) AS numeric);
END;
$BODY$
LANGUAGE plpgsql;

SELECT * FROM getsqlcost('SELECT clock_timestamp()');

sexta-feira, 18 de maio de 2012

PostgreSQL - Campo timestamp sem milissegundos

CREATE OR REPLACE FUNCTION self_destroy() RETURNS void AS
$BODY$
BEGIN
DROP TABLE IF EXISTS mslxp_self_destroy;
CREATE TEMP TABLE mslxp_self_destroy
(
dt1 timestamp    without time zone,
dt2 timestamp(0) without time zone
);
INSERT INTO mslxp_self_destroy(dt1, dt2) VALUES (clock_timestamp(), clock_timestamp());
DROP FUNCTION self_destroy();
END;
$BODY$
LANGUAGE plpgsql;

SELECT self_destroy();
SELECT * FROM self_destroy;

Resultado:
2012-05-18 11:10:03.414 | 2012-05-18 11:10:03

sexta-feira, 11 de novembro de 2011

PostgreSQL - Função para usar printf em pgsql


http://wiki.postgresql.org/wiki/Sprintf

# select printf('% is a % and % is a %, but %% is a %', '{hello,word,1,number,percent sign}');
                      printf
------------------------------------------------------------
hello is a word and 1 is a number, but % is a percent sign
(1 fila)

terça-feira, 1 de novembro de 2011

IfThen do Delphi no PostgreSql

CREATE OR REPLACE FUNCTION public.ifthen(cond boolean, iftrue varchar, ifelse varchar) RETURNS varchar AS
$BODY$
BEGIN
    IF cond THEN
        RETURN iftrue;
    ELSE
        RETURN ifelse;
    END IF;
END;
$BODY$ LANGUAGE 'plpgsql';

segunda-feira, 31 de outubro de 2011

PostgreSql - Criando a liguagem procedural plpgsql no pgAdmin III

CREATE PROCEDURAL LANGUAGE plpgsql;
ALTER PROCEDURAL LANGUAGE plpgsql OWNER TO postgres;

PostgreSql - Função para validar estado (UF) brasileiro


CREATE OR REPLACE FUNCTION public.is_valid_uf(p_uf varchar) RETURNS boolean AS
$BODY$
BEGIN
RETURN upper(p_uf) = ANY (string_to_array('AC,AL,AM,AP,BA,CE,DF,ES,GO,MA,MG,MS,MT,PA,PB,PE,PI,PR,RJ,RN,RO,RR,RS,SC,SE,SP,TO', ','));
END;
$BODY$
LANGUAGE 'plpgsql';