Avatar billede henrik_m Nybegynder
11. december 2005 - 23:04 Der er 2 kommentarer og
1 løsning

Indsætte i et view med 2 tabeller

Jeg skal indsætte i 2 tabeller samtidig som jeg har lavet en relation i mellem.

Jeg forsøger at indsætte i de 2 tabeller igennem et view som ser så ledes ud:

SELECT    dbo.tbl_test1.id_test1, dbo.tbl_test1.tekst1, tbl_test1_1.Tekst2, tbl_test1_1.id_test1 AS Expr1, tbl_test1_1.id_test2

FROM dbo.tbl_test1 INNER JOIN
dbo.tbl_test2 tbl_test1_1 ON dbo.tbl_test1.id_test1 = tbl_test1_1.id_test1

desværre får jeg fejl - id_test2 må ikke være null - men skulle kunne løses med en relation mellem de 2 tabeller.

håber nogen kan hjælpe.

/Henrik
Avatar billede Slettet bruger
12. december 2005 - 10:38 #1
Du kan kun indsætte i et view såfremt alle de felter, du indsætter, hører til samme tabel.
Avatar billede henrik_m Nybegynder
12. december 2005 - 19:37 #2
Ærgeligt - Det havde jeg ellers lige brug for.

/Henrik
Avatar billede trer Nybegynder
16. december 2005 - 18:09 #3
sandbox har ikke helt ret. kig på "INSTEAD OF triggers" i Books Online. 

Du kan sætte disse triggers på dit view - når du så laver en insert, update eller delete fyrer triggeren i stedet for at handlingen bliver udført - og nu kan du så lave den operation du reelt set ønsker.

De data som den oprindelige operation ville have påvirket finder du i de to virtuelle tabeller "inserted" og "deleted" - og husk at triggeren er en sæt-operation og ikke en række-operation.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester