Avatar billede stener Nybegynder
23. maj 2003 - 12:08 Der er 3 kommentarer og
1 løsning

Få id efter update af tabel

Hejsa

Når jeg har opdateret min database vil jeg gerne have primær nøgle id så jeg kan bruge det i en anden table.

Altså ligesom @@indentity

Hvis man bruger access kan man gøre følgende

sql "select blabla"
rs.open sql,conn,1,2
rs.addnew
bla bal
rs.update
produktid = rs("primærnøgle")
rs.close

Men det virker ikke med en sql database.

Kan det lade sig gøre at få det ud lige efter en update uden at skulle til at selecte fra dabasen igen?.

Mvh

Stener
Avatar billede oasen Nybegynder
23. maj 2003 - 13:34 #1
Kan du ikke bare hente ID'et, inden du opdaterer den pågældende post?

sql "select ID, blabla"
Avatar billede stener Nybegynder
23. maj 2003 - 14:02 #2
Lige nu gør jeg det at når jeg har opdareret den ene tabel så

select max(A_id) as produktid from blabla

så får jeg den sidst indsatte posts id som så gerne skulle være den som brugeren lige har indsat også bruger jeg det id til den anden tabel.

Det virker fint med en bruger men hvis der nu er 10 der opdatere på engang er jeg ikke sikker på om den gør det rigtigt.

Mvh

Stener
Avatar billede eagleeye Praktikant
23. maj 2003 - 14:46 #3
Du laver det som en INSERT og så @@indentity i to SQLsætninger efter hinaden.

SQL = "INSERT INTO tabel (xxx,yyy) VALUES ('ccc','vvvv')"
Conn.Execute(SQL)
SQL = "SELECT @@indentity as NewID"
Set rs = Conn.Execute(SQL)

nytID = rs("newid")
Avatar billede soes Nybegynder
23. maj 2003 - 22:19 #4
lidt laese stof, ved ikke om det kan bruges:
http://activedeveloper.dk/locator.asp?guid=001000000291
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
Kurser inden for grundlæggende programmering

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