Subject | Re: Exception handling |
---|---|
Author | fantomen66 |
Post date | 2002-11-21T15:25:17Z |
Thanks.. I guess, I keep using the old notation from habbit.. but I
did change my view as you suggetion.. thanks.. But i guess one can
update the view itself with a trigger.. if you in the trigger script
for the view update the tables involved thus updateing the view.. or
am i on thin ice
brgds
sohail
--- In ib-support@y..., Svein Erling Tysvaer
<svein.erling.tysvaer@k...> wrote:
did change my view as you suggetion.. thanks.. But i guess one can
update the view itself with a trigger.. if you in the trigger script
for the view update the tables involved thus updateing the view.. or
am i on thin ice
brgds
sohail
--- In ib-support@y..., Svein Erling Tysvaer
<svein.erling.tysvaer@k...> wrote:
> No, you cannot have triggers on views, I thought you were going touse it
> so that it was impossible to overbook a hotel or something and thenI
> thought it would be better to prevent that from happening by usinga
> trigger (or check constraint) on the actual column that shouted NEJwhen
> you tried to book a room that wasn't available.I,
>
> As for your view, I'm only curious as to why you use the old SQL-89
> notation. In general SQL-92 is recommended, i.e.
>
> CREATE VIEW VY_SANGPLATSER AS
> select V.PLATSID, P.PERSNR, P.FNAMN, P.ENAMN, V.SANGNR, V.RUMNR,
> A.AVDID, A.NAMN, P.KON, I.INSKRIVID, INTAG.INTAGID
> from TBLINSKRIVNING I
> join TBLINTAGNING INTAG on I.INSKRIVID = INTAG.INSKRIVID
> join TBLVARDPLATS V on V.PLATSID = INTAG.PLATSID
> join TBLAVDELNING A on A.AVDID = INTAG.AVDID
> join TBLPATIENT P on P.PERSNR = I.PERSNR
> ;
>
> (Easier to read and e.g. makes JoinLinks in IBO redundant)
> Set
>
> At 13:30 21.11.2002 +0000, you wrote:
> >Could this be acomplished witha a insert/uppdate trigger on this
> >following view where count is to be controlled on P.PERSNR is not
> >larger then 20:
> >
> >CREATE VIEW VY_SANGPLATSER AS
> >select V.PLATSID, P.PERSNR, P.FNAMN, P.ENAMN, V.SANGNR, V.RUMNR,
> >A.AVDID, A.NAMN, P.KON, I.INSKRIVID, INTAG.INTAGID
> >from TBLVARDPLATS V, TBLAVDELNING A, TBLPATIENT P, TBLINSKRIVNING
> >TBLINTAGNING INTAG
> >WHERE P.PERSNR = I.PERSNR
> >AND
> >V.PLATSID = INTAG.PLATSID
> >AND
> >A.AVDID = INTAG.AVDID
> >AND
> >I.INSKRIVID = INTAG.INSKRIVID
> >;