Avatar billede cogito Nybegynder
26. marts 2003 - 21:26 Der er 6 kommentarer og
1 løsning

Opdatere placering ved insert

Hej.

Jeg har en tabel der indeholder:
Navn    Tid    Placering
Jens    2.234  2
Anton    3.456  3
Tim      1.234  1

Anton får nu opdateret sin tid til 1.456 og hans placering skal derfor opdateres til nr. 2 - og de andre rettes til.

Hvordan sørensen gøres det? Jeg forestiller mig, at det bliver i forbindelse med en sql insert into statement.
Avatar billede hmm10 Nybegynder
26. marts 2003 - 21:31 #1
Hvorfor har du en celle, der hedder 'placering'? - det kan systemet da komme til at kunne regne ud, hvis man fx. sætter 'order by tid'..
Avatar billede -master-d- Nybegynder
26. marts 2003 - 22:45 #2
Under alle omstændigheder skal du ikke bruge insert, men derimod update.
Jeg vil dog også give hmm10 ret i at det er sjovt at du har et felt som hedder placering og ikke bare hiver det ud og sorterer efter tid.
Avatar billede peppino Nybegynder
26. marts 2003 - 22:47 #3
http://www.eksperten.dk/spm/182615
Det hjælper nogen gange at søge her på eksperten
Avatar billede peppino Nybegynder
26. marts 2003 - 22:57 #4
set rs = conn.execute("select * from brugere order by tid desc")

do until rs.eof

Set placering2 = Server.CreateObject("ADODB.RecordSet")
placering2.CursorLocation = 3 ' adUseClient
strSQL = "Select * From brugere where id = "& rs("id") &""

placering2.Open strSQL, Conn, 1, 3

strtid = placering2("tid")

strSQL = "Select * From brugere where tid  > " & strTID &""

Set placering3 = Server.CreateObject("ADODB.RecordSet")
placering3.Open strSQL, Conn, 1, 3

placeringen = placering3.RecordCount + 1

set rs2 = conn.execute("select count(*) as antal from brugere where tid = "& strTID &"")
navne = navne & placeringen & rs("navn") &"<br>"

placering2.Close
rs.movenext
loop
Avatar billede peppino Nybegynder
26. marts 2003 - 22:57 #5
set rs = conn.execute("select * from brugere order by tid desc")

do until rs.eof

Set placering2 = Server.CreateObject("ADODB.RecordSet")
placering2.CursorLocation = 3 ' adUseClient
strSQL = "Select * From brugere where id = "& rs("id") &""

placering2.Open strSQL, Conn, 1, 3

strtid = placering2("tid")

strSQL = "Select * From brugere where tid  > " & strTID &""

Set placering3 = Server.CreateObject("ADODB.RecordSet")
placering3.Open strSQL, Conn, 1, 3

placeringen = placering3.RecordCount + 1

navne = navne & placeringen & rs("navn") &"<br>"

placering2.Close
rs.movenext
loop
Avatar billede peppino Nybegynder
26. marts 2003 - 23:00 #6
set rs = conn.execute("select * from brugere order by tid desc")

do until rs.eof

Set placering2 = Server.CreateObject("ADODB.RecordSet")
placering2.CursorLocation = 3 ' adUseClient
strSQL = "Select * From brugere where id = "& rs("id") &""

placering2.Open strSQL, Conn, 1, 3

strtid = placering2("tid")

strSQL = "Select * From brugere where tid  > " & strTID &""

Set placering3 = Server.CreateObject("ADODB.RecordSet")
placering3.Open strSQL, Conn, 1, 3

placeringen = placering3.RecordCount + 1

Response.Write = placeringen & rs("navn") &"<br>"

placering2.Close
rs.movenext
loop

Det kører rigtig godt for mig :D
Avatar billede peppino Nybegynder
26. marts 2003 - 23:03 #7
Den her kode updater også placeringen

set rs = conn.execute("select * from brugere order by tid desc")

do until rs.eof

Set placering2 = Server.CreateObject("ADODB.RecordSet")
placering2.CursorLocation = 3 ' adUseClient
strSQL = "Select * From brugere where id = "& rs("id") &""

placering2.Open strSQL, Conn, 1, 3

strtid = placering2("tid")

strSQL = "Select * From brugere where tid  > " & strTID &""

Set placering3 = Server.CreateObject("ADODB.RecordSet")
placering3.Open strSQL, Conn, 1, 3

placeringen = placering3.RecordCount + 1

Response.Write = placeringen & rs("navn") &"<br>"

placering2("placering") = placeringen
placering2.update

placering2.Close
rs.movenext
loop
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