Någon som vet hur man enklast tar reda på unique identifiern på en nyupplagd post (för att direkt kunna använda den nyckeln för uppläggning av kopplade poster i en anna tabell)??
Select @@identity är alltså en standard SQL-fråga som bör fungera i de flesta dbms (kolla vad man lär sig ;) ) och ska returnera id för den senast inlagda posten, right?
Mitt id fält i access är uppsatt som en räknare med räknartypen replikerings-id (liknar unique identifier i MS-SQL).
Vet du att ovanstående select sats fungerar med Access?
Bifogar hela subben...
Sub NewCardSeries()
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath(".") & "../db/helpline.mdb"
Set Cmd = Server.CreateObject("ADODB.Command")
Set Cmd.ActiveConnection = Connection
SQL = "INSERT INTO cardseries (Owner, FirstCard, LastCard, SubscriptionStart, SubscriptionEnd) " & _
" VALUES ('" & Request.Form("fldCompany") & "' , '" & Request.Form("fldFirstCard") & "', " & _
" '" & Request.Form("fldLastCard") & "' , '" & Request.Form("fldStartDate") & "', " & _
" '" & Request.Form("fldEndDate") & "')"
Connection.Execute(SQL)
set rs = connection.execute("select @@identity")
'## Also post all the individual cards in card db
cmpFirstCard = Trim(Request.Form("fldFirstCard"))
cmpLastCard = Trim(Request.Form("fldLastCard"))
For Counter = cmpFirstCard to cmpLastCard
SQL = "INSERT INTO Cards (CardNumber, CardSeries, Owner) VALUES ('" & Counter & "', '" & Request.Form("fldCompany") & "', " & rs(0) & ")"
Connection.Execute(SQL)
Next
'## Send the users back the entryform, giving them a chance to enter another series
Call ShowHeader
Call ShowCardSeries
End Sub
Man borde ju kunna ha både replikerings-id och en vanlig räknare? Då kan man lätt lista ut vilket replikerings-id som tillhör posten vars id har värdet i @@identity.
Förvisso, men det känns lite som kaka på kaka. Just i det här fallet så har det ingen egentlig betydelse vilken typ av räknare jag använder. Därför skrev jag om hela klabbet med vanliga räknare i alla tabeller och nu fungerar allt geschwint.
Men...man kan ju ändå inte riktigt släppa problemet med replikerings-id...
Nåja, det fungerar, så vi nöjer oss med det!
259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e