26. august 2003 - 19:11
Der er
8 kommentarer og 1 løsning
Hvad er ID på netop oprettede post??
Hej - Jeg er ny i asp, så jeg flapper lidt rundt her i starten. Når man via autonummerering i sin database opretter en ny post via INSERT INTO komandoen, hvordan ved man så hvilket ID den har fået - er der en let måde at gøre det på, eller...??? På forhånd tak! Frank
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
26. august 2003 - 19:15
#1
Det kommer an på hvilken databse du bruger?
26. august 2003 - 19:16
#2
Sorry - selvfølgelig betyder det noget... Set conntemp = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("test.mdb") & "; UID=Administrator; PWD=" conntemp.open DSN Det er hvad du søger, ikk...
26. august 2003 - 19:18
#3
26. august 2003 - 19:19
#4
Det bedste ville være at få dette til at virke: Conn.Open "Provider=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("somedir\somedb.mdb" SQL = "INSERT INTO someTable (fld1, fld2) VALUES(123,'xyz');" conn.Execute SQL Set RS = Conn.Execute( "SELECT @@IDENTITY" ) idOfNewlyAddedRecord = RS(0) RS.Close response.write idOfNewlyAddedRecord
26. august 2003 - 19:20
#5
Gvier det 0 hver gang så brug dette: Conn.Open "Provider=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("somedir\somedb.mdb") RS.Open "SELECT * FROM someTable", Conn,1,3 RS.AddNew RS("field1") = "noget" RS("field2") = "noget andet" ... RS("fieldN") = valueN RS.Update idOfAddedRecord = RS("nameOfAutonumberField") Response.write idOfAddedRecord
26. august 2003 - 19:25
#6
26. august 2003 - 22:05
#7
Tak for hjælpen - det virker bare ikke endnu - det kan måske skyldes at jeg sætter det ind det forkerte sted!?! Her er hele min kode - den skriver hele tiden: Et objekt er obligatorisk: '' - det er linien hvor select @@identity står. <% 'Åbn databasen Set conntemp = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("test.mdb") & "; UID=Administrator; PWD=" conntemp.open DSN strDato = year(now) & "-" & month(now) & "-" & day(now) strtid = hour(now) & ":" & minute(now) SQL = "INSERT INTO tabel1 (ip,dato,tid) VALUES ('" & Request.ServerVariables("REMOTE_ADDR") & "', '"& strdato & "' , '"& strtid & "')" conntemp.execute(sql) SQL = Conn.Execute("Select @@Identity As NytID From Tabel") Set rs = Conn.Execute(SQL) Response.Write rs("NytID") %>
26. august 2003 - 22:10
#8
det er nogle småting galt forkert Connection obejdt i sidste linje og det skal være samme tabel navn i de to SQL sætninger . Prøv at rette din kode til dette: <% 'Åbn databasen Set conntemp = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("test.mdb") & "; UID=Administrator; PWD=" conntemp.open DSN strDato = year(now) & "-" & month(now) & "-" & day(now) strtid = hour(now) & ":" & minute(now) SQL = "INSERT INTO tabel1 (ip,dato,tid) VALUES ('" & Request.ServerVariables("REMOTE_ADDR") & "', '"& strdato & "' , '"& strtid & "')" conntemp.execute(sql) SQL = "Select @@Identity As NytID From tabel1" Set rs = conntemp.Execute(SQL) Response.Write rs("NytID") %>
26. august 2003 - 22:18
#9
Det kunne du jo bare have sagt... ;-) 1000 tak for din store hjælp - det virker - takket være DIG!! (Også tak til netro for linket, som også er brugbart - men lidt for indviklet til mit stade!!)
Kurser inden for grundlæggende programmering