Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle Primary key and Delphi: How to insert the primary key value automatically ?
Ger,
I maintain such triggers within S-Designor, a case tool. The case tool substitutes a generated name for %TRIGGER% and the current table name for %TABLE%. Here is how one looks:
create trigger %TRIGGER% before insert
on %TABLE% for each row
declare
integrity_error exception;
errno integer; errmsg char(200); dummy integer; found boolean;
begin
:new.CpuID := v_CpuID;
:new.CollectionID := v_CollectionID;
Hope this helps,
Ken
Ger Otten wrote:
>
> At the moment I am developing a client/server application with delphi 3
> Client/Server and Oracle 7.3.3.
> To make the application as fast as possible I want to use numeric primary
> keys.
>
> Oracle has the possibilty to generate sequence numbers that can be used as
> the value for the primary key in a table.
> For instance:
>
> Create sequence order_seq
> start with 1
> increment by 1
> nocylce
> cache 20;
>
> At the moment I insert a new record in a table I can reference the sequence
> number with NEXTVAL.
> For instance:
>
> Insert into orders (orderno, custno)
> values (order_seq.NEXTVAL, 1032)
>
> Questions:
>
> 1. Is it possible to use Oracle Database triggers to automatically fill in
> the next sequence number in the primary key field ?
> If so how can this be achieved ?
>
> 2. If this is not possible I would like to know the following : When I have
> a table open in a grid open in Delphi and I am in the edit
> mode. When I insert a record can I then get the next sequence number from
> Oracle and fill it myself in the table ? How do I do that.
> 3. Maybe both are possible: What do you prefer ?
>
> Thank you very much in advance !!
>
> sincerely,
>
> Ger Otten
>
> email: gmjotten_at_worldonline.nl
>
Received on Mon Sep 22 1997 - 00:00:00 CDT
![]() |
![]() |