/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Re: Problem med trigger
Fra : Kristian Damm Jensen


Dato : 03-08-04 22:21


Steen Andreassen wrote:
> Hejsa Nyhedsgruppe....
> Jeg er kørt helt fast mht. at lave en Insert-trigger på
tabellen:
> "tbl_netyper_idrift" som ses herunder.
>
> /* Denne tabel viser hvor mange enheder af en given type der er
idrift */
> CREATE TABLE [dbo].[tbl_netyper_idrift] (
> [neTypeID] [smallint] NOT NULL ,
> [dato] [datetime] NOT NULL ,
> [antal] [smallint] NOT NULL
> ) ON [PRIMARY]
>
> Typisk dataindhold i tbl_netyper_idrift:
> 1, 13-07-2003, 5
> 1, 13-10-2003, 17
> 2, 15-07-2003, 5
>
> /* Næste tabel angiver hvordan en given enhed er bestykket med
printkort*/
> CREATE TABLE [dbo].[tbl_bestykning] (
> [neTypeID] [smallint] NOT NULL ,
> [enhedsID] [smallint] NOT NULL ,
> [initialBestykning] [tinyint] NULL ,
> [maxBestykning] [smallint] NULL
> ) ON [PRIMARY]
>
> Typisk dataindhold i tabellen tbl_bestykning:
> 1, 12, 1, 5
> 1, 14, 1, 5
> 1, 27, 3, 4
> 2, 12, 1, 5
> 2, 13, 2, 7
>
>
>
> /* Denne tabel viser samtlige printkorttyper der er i drift
> sammen med antallet af kort */
> CREATE TABLE [dbo].[tbl_enheder_idrift] (
> [enhedsID] [smallint] NOT NULL ,
> [dato] [datetime] NOT NULL ,
> [antal] [smallint] NOT NULL
> ) ON [PRIMARY]
>
>
>
>
> Jeg har brug for, at der i tabellen: tbl_enheder_idrift indsættes
følgende
> hver gang der bliver indsat en ny record i tabellen:
tbl_netyper_idrift:
>
> enhedsID fra tbl_bestykning,
> dato (Bliver autogenereret)
> antal = tbl_netyper_idrift.antal * tbl_bestykning.initialBestykning
>
> Mit problem er, at skal have "Inserted" flere rækker i
tbl_enheder_idrift
> som følger af, at en given enhed (NeTypeId) har flere rækker i
> tbl_bestykning, som følger af, at en enhed er bestykket med flere
printkort.
>
> Hvordan løser jeg dette ?

Jeg kan ærlig talt ikke se problemet. Hvad er der galt med

insert into tbl_enhder_idrift(
enhedsID, dato, antal)
select ne_i.enhedsID, getdate(), antal*initialBestykning
from inserted ne_i
join tbl_bestykning b
on ne_i.neTypeID = b.neTypeID

??

Jeg kan ikke forestille mig, at det skulle være nødvendigt at fnidre
med en cursor for at gøre det her.

Kristian


 
 
Søg
Reklame
Statistik
Spørgsmål : 177514
Tips : 31968
Nyheder : 719565
Indlæg : 6408618
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste