Jump to content


Photo

Rows being placed out of order


  • Please log in to reply
4 replies to this topic

#1 urbanscribe

urbanscribe
  • New Members
  • Pip
  • Newbie
  • 1 posts

Posted 24 May 2006 - 08:22 AM

I feel as though I am probably overlooking something obvious here, but hopefully you guys can point it out to me. I have a few screenshots to show what I'm seeing, as it may be a little difficult to explain.

I have a table that has column `ID` set for auto_increment and as the Primary Key. I put in 5 rows as can be seen [a href=\"http://www.lukewilkins.com/one.gif\" target=\"_blank\"]in this image[/a], and the auto_increment seems to work perfectly.

Now, I decide to delete the Address row (which is ID 3), and that goes smoothly. I now have [a href=\"http://www.lukewilkins.com/two.gif\" target=\"_blank\"]this[/a].

Then I decide to add a new row called Comment and it gives it the ID 6 (as it should). However, as you can see [a href=\"http://www.lukewilkins.com/three.gif\" target=\"_blank\"]here[/a], it places it in between ID's 2 and 4 instead of at the end of the table.

This result effects some of my later scripts and need to know how to have it just place it at the end of the table. Everything is done in php (not in phpMyAdmin). Is it something to do with the auto_increment or primary key? Any help would be greatly appreciated.

Luke

#2 Honoré

Honoré
  • Members
  • PipPipPip
  • Advanced Member
  • 66 posts
  • LocationAntwerp - Belgium

Posted 24 May 2006 - 08:46 AM

This seems fine to me.
If you want the rows ordered use
SELECT * FROM fields_1 ORDER BY id


#3 fenway

fenway
  • Staff Alumni
  • MySQL Si-Fu / PHP Resident Alien
  • 16,199 posts
  • LocationToronto, ON

Posted 24 May 2006 - 03:25 PM

Honoré is right -- if you want the rows back in a particular order, you have to ask for it. Don't EVER rely on the internal row order, because -- as you discovered -- MySQL will generally "fill in the gaps", placing new rows where deleted rows once were (at least in MyISAM tables).
Seriously... if people don't start reading this before posting, I'm going to consider not answering at all.

#4 bobleny

bobleny
  • Members
  • PipPipPip
  • Advanced Member
  • 429 posts

Posted 24 May 2006 - 09:57 PM

Yeah, I had that same issue! That might work for urbanscribe but for me it is backwards. That places them in increasing order and I require that the be in decreasing order. So, how would I do that?
-- www.firemelt.net --
First do me a favor and read this: JavaScript is NOT Java - Then read this: www.php.net - When your done with that, read this Topic
After that, floors open. I and anyone else will be MORE than happy to answer YOUR query! [Topic Solved]
Cheer up, the worst has yet to come...

#5 AndyB

AndyB
  • Staff Alumni
  • Advanced Member
  • 5,465 posts
  • LocationToronto

Posted 24 May 2006 - 10:30 PM

[!--quoteo(post=376824:date=May 24 2006, 05:57 PM:name=Bob Leny)--][div class=\'quotetop\']QUOTE(Bob Leny @ May 24 2006, 05:57 PM) View Post[/div][div class=\'quotemain\'][!--quotec--]
Yeah, I had that same issue! That might work for urbanscribe but for me it is backwards. That places them in increasing order and I require that the be in decreasing order. So, how would I do that?
[/quote]
DESCending order ...
SELECT * from tablename ORDER by whatever DESC


Legend has it that reading the manual never killed anyone.
My site




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users