Avatar billede moso Nybegynder
14. februar 2003 - 13:58 Der er 9 kommentarer og
1 løsning

Byt plads imellem records?

Jeg skal have to records til at bytte plads. I en listning vil jeg gerne kunne flytte en record op eller ned i rækken. Jeg har et felt der hedder "prioritet" til formålet, men har prøvet med at ligge 1 til værdien. Så får jeg blot to records med samme værdi. Hvad kan man gøre?
Avatar billede coldray Nybegynder
14. februar 2003 - 14:01 #1
"SELECT * FROM tabel WHERE .... ORDER BY [prioritet] DESC" ..eller ASC.. prøv begge ting for at give det ønskede resultat!
Avatar billede coldray Nybegynder
14. februar 2003 - 14:01 #2
(Uden at ligge noget til værdien :)
Avatar billede moso Nybegynder
14. februar 2003 - 14:03 #3
Det er også rigtigt men så bytter hele tabellen rundt. Jeg vil ikke ændre rækkefølgen, men bytte plads imellem to records
Avatar billede coldray Nybegynder
14. februar 2003 - 14:06 #4
Hmm.. kan du ikke bare ændre prioritet ved de 2 omtalte posts..

enten ved brug at en "UPDATE" statement eller ved at manuelt redigere databasen?
Avatar billede coldray Nybegynder
14. februar 2003 - 14:14 #5
conn.execute("Update tabel set prioritet=x WHERE prioritet=x")
Avatar billede moso Nybegynder
14. februar 2003 - 14:19 #6
Jo det kan man godt, men det betyder at de to records vil få samme værdi.
Hvis jeg updater en record med feks. +1 vil den få samme værdi som den efterfølgende record. Så sorterers der efter idfeltet.
Avatar billede coldray Nybegynder
14. februar 2003 - 14:22 #7
Ikke nødvendigvis.. hvis vi siger at du vil bytte 5 om med 6.. så:

conn.execute("Update tabel set prioritet=100 WHERE prioritet=5")
conn.execute("Update tabel set prioritet=5 WHERE prioritet=6")
conn.execute("Update tabel set prioritet=6 WHERE prioritet=100")

..you get my point?
Avatar billede moso Nybegynder
14. februar 2003 - 14:35 #8
Aaarh. Det ser fint ud, en lille swap. Problemet er så bare at jeg ikke kender den eksakte værdi på feltet prioritet.
Det er ellers helt rigtigt, den havde jeg ikke tænkt på. Point til dig, men har du en ide til hvad jeg kan gøre når jeg ikke kender værdien af feltet
Avatar billede coldray Nybegynder
14. februar 2003 - 14:41 #9
hmm.. ja.. du kender sikkert nogle af de informationer som i mit eksempel har prioritet 5 og 6.. der er måske et navn.. en adresse.. eller hvad ved jeg..

så i din SQL streng kan du gøre følgende:

"SELECT * FROM tabel WHERE [navn] = 'moso fra eksperten'"
..
og så brug:
..
Feltet prioritet har en værdi på: <%= RS("prioritet") %>

..takker for pts!
Avatar billede moso Nybegynder
14. februar 2003 - 14:42 #10
jeg prøver
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