Jump to content

Recommended Posts

Hey guys quick question,

 

Is there way to always make sure inserting new rows take a unique number in the database but not necessarily doing an "auto increment"

 

Because say the 3rd row was deleted that leaves ID 3 available.. then i would rather the next newest insert to take ID 3 rather than the one at the very end.. which is what happens using auto increment.. how is this done?

Link to comment
https://forums.phpfreaks.com/topic/75730-primary-key/
Share on other sites

No there's no way that I know of unless you specify the unique data yourself.

 

There's been many threads discussing this very topic...you might want to search this forum.

 

But ask yourself, what does it matter that ID 3 is not used and the next available one is used instead?

 

A technique sometimes utilized is that a column is used to identify whether the row is considered deleted or not and the application being developed looks at that column value.  That way ID row 3 is never actually deleted but simply marked as deleted.

 

Also, depending on the application being developed, sometimes the requirement is that nothing should ever be delete for history or accounting sake.

Link to comment
https://forums.phpfreaks.com/topic/75730-primary-key/#findComment-383276
Share on other sites

the main reason was two things..

 

if id 3 is available the only amount of added data added to that column is 3 rather than it being at the end which would become 13442233

 

which means more data on the database.

 

Secondly users use this ID to regocnise themselves in the game. So the higher the number it becomes the harder it becomes to remember their ID.

 

you make a good point with the history thing though.

Link to comment
https://forums.phpfreaks.com/topic/75730-primary-key/#findComment-383479
Share on other sites

the main reason was two things..

 

if id 3 is available the only amount of added data added to that column is 3 rather than it being at the end which would become 13442233

 

which means more data on the database.

 

Secondly users use this ID to regocnise themselves in the game. So the higher the number it becomes the harder it becomes to remember their ID.

 

you make a good point with the history thing though.

You should NEVER re-use IDs... space is not the issue, if you want you can give your users a username to remember.

Link to comment
https://forums.phpfreaks.com/topic/75730-primary-key/#findComment-383564
Share on other sites

Secondly users use this ID to regocnise themselves in the game. So the higher the number it becomes the harder it becomes to remember their ID.

 

If someone had previously used ID # 3, then you would not want to reissue that number to someone else.

 

Save yourself the time and headache and never delete or assign the same primary key to more than one person.

 

Link to comment
https://forums.phpfreaks.com/topic/75730-primary-key/#findComment-383637
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.