webForumDet fria alternativet

Ta ut nästa Id från databas

ASP

1 svar · 1 443 visningar · startad av SGuncel

Medlem sedan jan. 2007217 inlägg
Frågan#1

Hej!

Jag undrar hur jag ska göra när jag vill ta ut nästa ID från databas. Då använder jag mig av Access just nu.

Dvs om det finns en post med ID 1 och sen nästa med ID 2 å det fortsätter så.

Medlem sedan juni 200032 967 inlägg
#2

Det beror på om ID är en räknare. Om det inte är det - ställ en SQL-fråga som hämtar ut högsta värdet och lägger till 1:

SELECT MAX(ID) + 1 AS NextId FROM myTable

Om det är en räknare måste du göra en insert och ta reda på vad den nya posten fick för värde.

' 1)
INSERT INTO myTable [...]
' 2)
SELECT @@IDENTITY AS NewId

Så, om du innan du gör en insert måste veta vad posten får för ID - då får du tänka om lite. Då får du först göra en insert (med dummy-värden om det ska vara så) - och senare uppdatera den posten.

(Kom ihåg att din INSERT och din SELECT i det andra alternativet måste göras med samma connectionobjekt-instans, annars är värdet borta.)

258 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)