Valdair algumas considerações:
- o script que voce mandou de criação de tabelas não referencia a coluna CD_UF que voce usa na trigger; - voce tem certeza que a sua trigger compilou? Voce recebeu a msg "Gatilho criado."? ou recebeu "Advertência: Gatilho criado com erros de compilação."? o Codigo que voce mandou nao compila com as tabelas mandadas - finalmente, a proposta de solução do teu problema: no teu comando insert da trigger, para os campos da tabela atual que devem ser inseridos, voce deve referencia-los como :new, pois referencia-se ao valores da tabela atual que está sofrendo a inserção obs: tireu a UF da trigger abaixo pois nao constava da tabela CREATE OR REPLACE TRIGGER TRG_ONINSCIDADE BEFORE INSERT ON CIDADE FOR EACH ROW BEGIN INSERT INTO CIDADE2(CD_CID,NM_CID) VALUES(:new.CD_CID, :new.NM_CId); END TRG_ONINSCIDADE; Renato Deggau On 5/11/07, valdair_matos <[EMAIL PROTECTED]> wrote: > > Olá, sou novato no grupo e também no oracle > > estou tentando aprender a criação e utilização de triggers > nao consigo entender o que há de errado na trigger abaixo > > CREATE OR REPLACE TRIGGER UNISUL.TRG_ONINSCIDADE BEFORE INSERT > ON UNISUL.CIDADE > FOR EACH ROW > BEGIN > INSERT INTO UNISUL.CIDADE2(CD_CID,NM_CID,CD_UF) > VALUES(UNISUL.CIDADE.CD_CID,UNISUL.CIDADE.NM_CID,UNISUL.CIDADE.CD_UF); > END UNISUL.TRG_ONINSCIDADE; > > o código acima é um exemplo do que estou querendo fazer: quando > inserir um registro em uma tabela automaticamente inserir o registro > em uma segunda tabela. > > Consigo compilar, mas quando vou inserir um registro na tabela cidade > ocorre o erro: > ORA-04098: gatilho 'UNISUL.TRG_ONINSCIDADE' é inválido e a revalidação > falhou > > codigo das tabelas > > Create table "CIDADE" ( > "CD_CID" Number(5,0) NOT NULL , > "NM_CID" Varchar2 (40) NOT NULL , > Constraint "CIDADE_PK" primary key ("CD_CID") > ) > > Create table "CIDADE2" ( > "CD_CID" Number(5,0) NOT NULL , > "NM_CID" Varchar2 (40) NOT NULL , > Constraint "CIDADE_PK" primary key ("CD_CID") > ) > > > [As partes desta mensagem que não continham texto foram removidas]