Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: DUPPICATE DATA FIELD IN INSERT AND UPDATE TRIGGER

Re: DUPPICATE DATA FIELD IN INSERT AND UPDATE TRIGGER

From: David Fitzjarrell <oratune_at_msn.com>
Date: 19 Jul 2002 12:53:32 -0700
Message-ID: <32d39fb1.0207191153.3bf21eb0@posting.google.com>


Far too much work to accomplish your goal:

14:49:38 TECHDB> CREATE TABLE MATABLE (
14:49:58   2  REFERENCE VARCHAR2(15),
14:49:58   3  NREFERENCE VARCHAR2(15));

Table created.

14:49:58 TECHDB> create or replace trigger Reference_matable before insert or update on matable

14:50:29   2  for each row
14:50:33   3  begin
14:50:35   4    :new.nreference := :new.reference;
14:50:49   5  end;
14:50:51   6  /

Trigger created.

14:50:53 TECHDB> INSERT INTO MATABLE (REFERENCE) VALUES ('OOOOOOOOOOO'); 1 row created.

14:51:05 TECHDB> select *
14:51:07 2 from matable;

REFERENCE NREFERENCE
--------------- ---------------
OOOOOOOOOOO OOOOOOOOOOO 14:51:10 TECHDB> pcouas_at_infodev.fr wrote in message news:<af5681c8.0207190513.1b79baaf_at_posting.google.com>...
> Hi,
>
> I tried to dupplicate datafield from REFERENCE to NREFERENCE in oracle
> 8.1.6.
> i haven't any error message but data is not dupplicated in my new
> field.
> Why
>
> Thanks
>
> Philippe
> PS
> i need to dupplicate data field because i need to have complex index
> with dupplicate data.
>
> Thanks
> Philippe
>
>
>
> CREATE TABLE MATABLE (
> REFERENCE VARCHAR2(15),
> NREFERENCE VARCHAR2(15));
> commit
>
> create or replace procedure UpdateMaTable ( b1 varchar2 ,p_rowid
> ROWID)
> is pragma autonomous_transaction;
> begin
> update matable set nreference=b1 where ROWID=p_rowid;
> commit;
> EXCEPTION
> when OTHERS THEN ROLLBACK;
> end UpdateMaTable;
>
> CREATE OR REPLACE TRIGGER Reference_matable AFTER INSERT OR UPDATE ON
> MATABLE
> FOR EACH ROW
> DECLARE
> v_current_rowid ROWID;
> BEGIN
> if :new.REFERENCE <> :new.NREFERENCE or :new.NREFERENCE is NULL then
> UpdateMaTable ( :new.REFERENCE, v_current_rowid);
> end if;
> end;
> /
>
>
> SELECT * FROM MATABLE;
>
>
> INSERT INTO MATABLE (REFERENCE) VALUES ('OOOOOOOOOOO');
>
> Data is not in two fields ???
Received on Fri Jul 19 2002 - 14:53:32 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US