webForumDet fria alternativet

insert i 2 tabeller

10 svar · 303 visningar · startad av maqe

maqeMedlem sedan dec. 2003824 inlägg
#1

jag har 2 tabeller, nodes och nodecontent
När jag skapar en ny nod så vill jag att det skall skapas en ny post i nodecontent med samma id som det unika id´t som nodes får när jag skapar den. Hur gör man detta?

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Man gör 2 st insertanrop. Hur du får tag på det unika idvärdet från den första tabellen beror på vilken dbms du använder.

@ndersMedlem sedan juni 200032 969 inlägg
#3

dbms?

Om den dbms man använder stöder det kan man ju alltid skapa en trigger som gör jobbet.

maqeMedlem sedan dec. 2003824 inlägg
#4

Jag använder mssql2000 och använder inga sp eller nått sånt ...

LarsGMedlem sedan dec. 200012 464 inlägg
#5
insert into nodes values ...

insert into nodecontent values (...,scope_identity(),...)
maqeMedlem sedan dec. 2003824 inlägg
#6

Hur skulle en sådan stored procedure kunna se ut?

@ndersMedlem sedan juni 200032 969 inlägg
#7
create procedure minprocedur as

insert into nodes values ...

insert into nodecontent values (...,scope_identity(),...)

go

jag förstår inte riktigt frågan.

maqeMedlem sedan dec. 2003824 inlägg
#8

ja man måste väl declarera nån variabel eller nått? Eller är det scope_identity() som fixar det?

maqeMedlem sedan dec. 2003824 inlägg
#9

Ok nu är jag med ... detta funkar utmärkt ...
Dock om jag får en parameter till min sp, hur skulle en sån se ut?

LarsGMedlem sedan dec. 200012 464 inlägg
#10

Ungefär

create procedure minprocedur 
(@p1 varchar(12), @p2 int, ...)
as

insert into nodes(c2,c3) values(@p1,getdate())

insert into nodecontent values (scope_identity(),@p2)

plus felhantering och transaktionshantering.

maqeMedlem sedan dec. 2003824 inlägg
#11

Känner mig nöjd med den här tråden nu ... tack för hjälpen. Nu skall jag bara göra lite sp´s för att radera noder med :)

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)