TRIGGER

1. TRIGGER

Pedro Henrique
Docks Panda

(usa Ubuntu)

Enviado em 03/06/2017 - 21:04h

Galera preciso de alguem que entenda em Banco de dados para me ajudar a desenvolver triggers....
Uma das triggers é fazer varios controles em uma tabela apenas..
acredito que eu tenha que passar o banco para entenderem...
se alguém estiver disposto a me ajudar comenta ai.


  


2. Re: TRIGGER

Osama Jr.
/bin/laden

(usa Void Linux)

Enviado em 05/06/2017 - 15:16h

CREATE PROCEDURAL LANGUAGE plpgsql;
-- Tabela que tera uma trigger associada
CREATE TABLE tb_login (
id SERIAL,
nome VARCHAR(255) NOT NULL,
login VARCHAR(64) NOT NULL,
senha VARCHAR(32) NOT NULL,
data DATE DEFAULT NULL,
CONSTRAINT pk_id_usuario PRIMARY KEY(id)
);

-- Funcao que sera chamada quando a trigger for disparada
CREATE FUNCTION fc_insere_data() RETURNS TRIGGER AS '
BEGIN
UPDATE tb_login SET data = now() WHERE id = NEW.id;
RETURN new;
END
' LANGUAGE plpgsql;

-- Criando a trigger, definindo sua acao e a qual tabela ela sera associada.
CREATE TRIGGER tg_insere_data AFTER INSERT ON tb_login FOR EACH ROW EXECUTE PROCEDURE fc_insere_data();


O que isso faz basicamente é:

Ao se inserir nos usuários na tabela "tb_login", a data de inserção dos mesmos é feita de forma automática pela trigger "tg_insere_data".

Exemplo:

-- Populando a tabela (veja que não passei a data!):
INSERT INTO tb_login (nome, login, senha) VALUES ('Fulano de Tal da Silva', 'fulano.silva', md5('123abc'));

-- Visualizando os dados da tabela:
SELECT * FROM tb_login;

Isso já dá uma ideia básica sobre triggers.
Qualquer dúvida, na net tá cheio de tuto sobre isso cara. É só pesquisar um pouco. ;)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts