Subject | RE: [firebird-support] Is there a better way of doing this ? |
---|---|
Author | Alan McDonald |
Post date | 2006-11-24T04:50:35Z |
> When a new product is created the insert statement ensures thatbut you only need to insert, not insert then update. make it one operation
> it is inserted in the table.
>
> After that point, it exists and only the update section matters.
INSERT INTO BALE(CODE, FABRICCODE, FABRICDESCR, APMCODE, etc, ) VALUES
(:CODE, :FABRICCODE, ETC).
>Alexandre has answered this one
> What is the 'exists predicate' ?
>
> Thanks
>
>
> ----- Original Message -----
> From: Alan McDonald
> To: firebird-support@yahoogroups.com
> Sent: Friday, November 24, 2006 10:42 AM
> Subject: RE: [firebird-support] Is there a better way of doing this ?
>
>
> > I use this structure to table maintenance processes.
> >
> > The simple question is , can it be done in a better way ?
> >
> > Thanks
> >
> > Stephen
> >
> > SET TERM ^ ;
> > CREATE PROCEDURE BALE_SAVE
> > (
> > CODE VARCHAR(30),
> > FABRICCODE VARCHAR(20),
> > FABRICDESCR VARCHAR(60),
> > APMCODE VARCHAR(20),
> > APMDESCR VARCHAR(60),
> > QTYEST NUMERIC(15,2)
> > )
> > AS
> > DECLARE VARIABLE CNT INTEGER ;
> > BEGIN
> >
> > SELECT COUNT(CODE) FROM BALE
> > WHERE BALE.CODE = :CODE
> > INTO CNT ;
> >
> > IF (:CNT=0) THEN INSERT INTO BALE(CODE) VALUES (:CODE) ;
> >
> > UPDATE BALE
> > SET
> > FABRICCODE = :FABRICCODE,
> > FABRICDESCR = :FABRICDESCR,
> > APMCODE = :APMCODE,
> > APMDESCR = :APMDESCR,
> > QTYEST = :QTYEST
> > WHERE
> > CODE = :CODE ;
> >
> > END ^
> >
>
> I would use the exists predicate and not do a count - it's much faster.
> And why do an insert, then an update? Why not just insert the values?
> Alan
>
>
>
>
>
> [Non-text portions of this message have been removed]
>
>
>
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
> Visit http://www.firebirdsql.org and click the Resources item
> on the main (top) menu. Try Knowledgebase and FAQ links !
>
> Also search the knowledgebases at http://www.ibphoenix.com
>
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
> Yahoo! Groups Links
>
>
>
>
>