Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > FAQ
SEÇÕES
Monotemáticos
+ HTML
+ CSS
+ PHP
+ ASP
+ Javascript
Manuais
+ Desde 0
+ Tecnologia
+ Divulgação de sites
+ Flash
+ Mais manuais
Outras Seções
+ Diretório
+ Buscar em CriarWeb
+ Programas
+ Faqs
+ Colabore
Serviços e comunidade
+ Home comunidade
+ Suas Páginas
+ Boletim
+ Cadastrar-se
+ Gerador de METAs
+ Enquete
+ Livro de visitas

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net
- CodigoFonte.net


Ajuda com um trigger

Olá amigos, gostaria que vocês me orientassem um pouco, estou tratando de fazer um trigger para uma tabela que se chama c_provedor, a idéia é disparar o trigger quando alguém fizer uma mudança de um campo. Meu problema é que tenho três campos no trigger que são AUDITO_CAMPOAUDITO,AUDITO_VALORANTE,AUDIO_VALNOVO O que não sei é como dizer ao trigger que identifique qual é o campo que se fez a mudança este é meu trigger

CREATE TRIGGER AUDITORIA AFTER UPDATE ON C_PROVEDOR,
FOR EACH ROW BEGIN
INSERT INTO G_AUDITO (USUARI_CODIGO,AUDITO_DATA_AUDITO, AUDITO_TIPOMOVIM,AUDITO_TABELAAUDITO,AUDITO_CAMPOAUDITO, AUDITO_VALORANTE,AUDIO_VALONOVO) VALUES (s_username,NOW(),INSERT,PROVEDOR, AUDITO_CAMPOAUDITO,AUDITO_VALORANTE,AUDIO_VALNOVO)

E esta é a estrutura de minha tabela

CREATE TABLE IF NOT EXISTS `c_provedor` (
`PROVED_CODIGO` int(5) NOT NULL auto_increment,
`PROVED_RAZSOC` varchar(40) NOT NULL,
`PROVED_RUC` varchar(14) NOT NULL,
`PROVED_TIPO` varchar(1) NOT NULL,
`PROVED_DIREC` varchar(20) NOT NULL,
`PROVED_TELEF` varchar(13) NOT NULL,
`PROVED_OBSERVA` varchar(30) default NULL,
`PROVED_STATUS` varchar(3) NOT NULL, PRIMARY KEY (`PROVED_CODIGO`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

A FAQ Ajuda com um trigger tem Pertence à categoria:
Resposta de Mariano 28/5/08
Quando estiver fazendo um insert através do trigger, você pode acessar a uma tabela que se chama inserted que contêm todos os campos da tabela que estiver por inserir

exemplo

INSERT INTO G_AUDITO (USUARI_CODIGO,AUDITO_DATA_AUDITO, AUDITO_TIPOMOVIM,AUDITO_TABELAAUDITO, AUDITO_CAMPOAUDITO,AUDITO_VALORANTE,AUDIO_VALNOVO) VALUES
select s_username,NOW(),INSERT,PROVEDOR,AUDITO_CAMPOAUDITO,AUDITO_VALORANTE,AUDIO_VALNUEVO from inserted

e adentro.

 
FAQ relacionadas
  + Selecionar uma parte de uma cadeia em SQL Server
  + Obter detalhes do servidor SQL Server
  + Mudar de BD SQL Server Remoto a BD SQL Server Local

Complementar a respostaComplementar a resposta
Voltar à árvore de categoriasVoltar à árvore de categorias


Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites