Avatar billede dehdar Nybegynder
07. oktober 2009 - 17:49 Der er 5 kommentarer og
1 løsning

SQL Database Select - store problemer

Hej, jeg undrer mig stærkt over, hvorfor mine tabeller automatisk arrangerer alt data i hver kolonne efter numerisk rækkefølge.

Jeg har f.eks. en tabel, som hedder "roller". En bestemt kolonne i roller "ID" er så udvalgt som mine primærenøgle. Hvis jeg indsætter en rolle med ID 2 og derefter en rolle med ID 1, hvorfor får jeg så altid først ID1 og dernæst ID2, hvis jeg laver en "select* from roller"?

Det er mega irriterende. Kan jeg ikke komme udenom problemet på en smart måde?
Avatar billede arne_v Ekspert
07. oktober 2009 - 17:54 #1
Relationelle databaser giver dig principielt raekker i en tilfaeldig raekkefoelge hvsi du ikke angiver en ORDER BY.

Saa hvsi du vil have raekkerne i en betsemt raekkefoelge, skal du lave ORDER BY paa et felt som giver den raekkefoelge som du oensker.
Avatar billede dehdar Nybegynder
07. oktober 2009 - 18:33 #2
Det er også umiddelbart hvad jeg troede...

Jeg ønsker at læse mit data i den orden de er sat ind i databasen. Umiddelbart kan problemet hurtigt læses ved indsættelse af timestamps, men det burde ikke være nødvendigt.
Avatar billede arne_v Ekspert
07. oktober 2009 - 19:10 #3
Jo - det er noedvendigt. Databasen vedligeholder ikke et skjult felt med den information.
Avatar billede dehdar Nybegynder
08. oktober 2009 - 22:15 #4
Timestamp kunne jeg alligevel ikke bruge da jeg indsætter omkring 30-40 rækker i min database på stort set samme sekundt, så i stedet for indexerer jeg dem på en smart måde (synes jeg selv).

Men tak for hjælpen. Smid et svar :)
Avatar billede HenrikSjang Nybegynder
09. oktober 2009 - 19:59 #5
Det du kan gøre er at tilføje en INT IDENTITY kolonne, og så bruge ORDER BY på den. Så vil du altid få dem ud i den rækkefølge de er kommet ind - uanset om der er kommet en masse rækker i samme sekund
Avatar billede dehdar Nybegynder
15. februar 2010 - 22:55 #6
lukket
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
Computerworld tilbyder specialiserede kurser i database-management

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