/ Forside/ Teknologi / Udvikling / SQL / Spørgsmål
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
Insert statement
Fra : jdjespersen
Vist : 1092 gange
300 point
Dato : 12-06-01 15:20

Jeg har to tabeller, f.eks. "brugere" og "mapper". Hver mappe er relateret til en bruger. En bruger kan have en eller flere mapper.

"Brugere" design:
BrugerID
Fornavn
Efternavn

"Mapper" design:
MappeID
BrugerID
Mappenavn

Hvordan opretter jeg i SQL en ny mappe for hver bruger i eet og samme insert statement? Dvs. at hvis der findes 7 brugere, skal jeg i insert'en oprette 7 nye poster i Mapper-tabellen, hvor hver nye post relaterer til hver deres bruger. Mappenavn for de 7 mapper ville være det samme.

Basen ligger på en SQL Server 2000.

/jeppe


 
 
Accepteret svar
Fra : fehaar

Modtaget 310 point
Dato : 12-06-01 15:25

INSERT INTO Mapper (BrugerID, Mappenavn)
SELECT BrugerID, Fornavn FROM Brugere

Dette forudsætter at der er en IDENTITY på MappeID så den selv giver dem nye MappeID...


Kommentar
Fra : Nyhedsbruger


Dato : 12-06-01 16:25


"jdjespersen" <jdjespersen.news@kandu.dk> wrote in message
news:HFoV6.6375$rs4.1022945@news010.worldonline.dk...
> Jeg har to tabeller, f.eks. "brugere" og "mapper". Hver mappe er
> relateret til en bruger. En bruger kan have en eller flere mapper.
>
> "Brugere" design:
> BrugerID
> Fornavn
> Efternavn
>
> "Mapper" design:
> MappeID
> BrugerID
> Mappenavn
>
> Hvordan opretter jeg i SQL en ny mappe for hver bruger i eet og samme
> insert statement? Dvs. at hvis der findes 7 brugere, skal jeg i
> insert'en oprette 7 nye poster i Mapper-tabellen, hvor hver nye post
> relaterer til hver deres bruger. Mappenavn for de 7 mapper ville være
> det samme.

Hvis du fisker efter om du kan gøre det i et hug så er svaret nej. Du skal
lave en Begin Transaction og så lave dine insert's og så slutte med en
commit transaction (rollback hvis noget går i skrot). Hvis du fra din klient
kode gerne vil have det som et kald så pak det ind i en stored procedure
evt. noget trigger værk hvis du syntes sådan noget er smart ;)

>
> Basen ligger på en SQL Server 2000.
>
> /jeppe
>
>
> --
> Leveret af:
> http://www.kandu.dk/
> "Vejen til en hurtig løsning"
>



Godkendelse af svar
Fra : jdjespersen


Dato : 13-06-01 06:58


Fehaar: Nå, jo, det er jo vildt simpelt.

Damn!

Takker,
Jeppe


Kommentar
Fra : Nyhedsbruger


Dato : 13-06-01 11:40


"James Olsen" <james_olsen@vip.cybercity.dk> wrote in message
news:9g5cat$1r17$1@news.cybercity.dk...
>
> "jdjespersen" <jdjespersen.news@kandu.dk> wrote in message
> news:HFoV6.6375$rs4.1022945@news010.worldonline.dk...
> > Jeg har to tabeller, f.eks. "brugere" og "mapper". Hver mappe er
> > relateret til en bruger. En bruger kan have en eller flere mapper.
> >
> > "Brugere" design:
> > BrugerID
> > Fornavn
> > Efternavn
> >
> > "Mapper" design:
> > MappeID
> > BrugerID
> > Mappenavn
> >
> > Hvordan opretter jeg i SQL en ny mappe for hver bruger i eet og samme
> > insert statement? Dvs. at hvis der findes 7 brugere, skal jeg i
> > insert'en oprette 7 nye poster i Mapper-tabellen, hvor hver nye post
> > relaterer til hver deres bruger. Mappenavn for de 7 mapper ville være
> > det samme.
>
> Hvis du fisker efter om du kan gøre det i et hug så er svaret nej.

Hmmm, læg mærke til at mappenavn skal være det samme for alle 7 brugere

INSERT INTO Mapper (BrugerID, MappeNavn)
SELECT BrugerID, 'MinMappe' As MappeNavn FROM Brugere

Her går jeg ud fra at mappeid er autogenereret

mvh/Peter Lykkegaard



Kommentar
Fra : Nyhedsbruger


Dato : 13-06-01 16:41


"Peter Lykkegaard" <polonline@hot.mail.com> wrote in message
news:7lHV6.173$DH.20427@news.get2net.dk...
>
> "James Olsen" <james_olsen@vip.cybercity.dk> wrote in message
> news:9g5cat$1r17$1@news.cybercity.dk...
> >
> > "jdjespersen" <jdjespersen.news@kandu.dk> wrote in message
> > news:HFoV6.6375$rs4.1022945@news010.worldonline.dk...
> > > Jeg har to tabeller, f.eks. "brugere" og "mapper". Hver mappe er
> > > relateret til en bruger. En bruger kan have en eller flere mapper.
> > >
> > > "Brugere" design:
> > > BrugerID
> > > Fornavn
> > > Efternavn
> > >
> > > "Mapper" design:
> > > MappeID
> > > BrugerID
> > > Mappenavn
> > >
> > > Hvordan opretter jeg i SQL en ny mappe for hver bruger i eet og samme
> > > insert statement? Dvs. at hvis der findes 7 brugere, skal jeg i
> > > insert'en oprette 7 nye poster i Mapper-tabellen, hvor hver nye post
> > > relaterer til hver deres bruger. Mappenavn for de 7 mapper ville være
> > > det samme.
> >
> > Hvis du fisker efter om du kan gøre det i et hug så er svaret nej.
>
> Hmmm, læg mærke til at mappenavn skal være det samme for alle 7 brugere
>
> INSERT INTO Mapper (BrugerID, MappeNavn)
> SELECT BrugerID, 'MinMappe' As MappeNavn FROM Brugere
>

Puha jo tak - jeg må hellere hjem og pleje min alzheimer-light ;)

> Her går jeg ud fra at mappeid er autogenereret
>
> mvh/Peter Lykkegaard
>
>



Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste