On Sat, 2006-03-04 at 09:14, tedd wrote:
> planetthoughtful wrote:
>
> >But, too often I've seen people new to database design not liking
> >'gaps' because 'user1' will have a unique id of '1', while 'user2'
> >will have a unique id of '6' because the records associated with
> >unique ids '2' through '5' were deleted during testing, and so on.
> >So, they feel that 'user2' should have a unique id of '2', ignoring
> >the fact that that's not a unique id at all, if you had id '2'
> >associated with another record at some point.
>
> And, Anthony wrote:
>
> >I remember the days where i'd
> >clear a database after testing to keep the auto_increment inline, but
> >eventually, you will get out of sync on that, so it's not a reliable way of
> >keeping a numerical sequence.
>
> Well... I'm one of those people who don't like gaps. I understand
> that if the dB is relational, then you shouldn't be concerned about
> gaps. Gaps are only perceived from a perspective of an artificial
> ordering system -- who knows where the data actually is in memory or
> on disk.
>
> However, when I'm working with a flat dB and want to step through the
> records to do editing, I like the records to be in order based upon
> an "id" (i.e., Record 1, Record 2, Record 3, and so on). I use an
> auto_increment unique "id" for this.
>
> It's not a big problem for me to keep the records in order either.
> Whenever I delete a record, I simply follow with:
>
> $dbQuery = "ALTER TABLE $dbtable ";
> $dbQuery .= "DROP id, ";
> $dbQuery .= "ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT,";
> $dbQuery .= "AUTO_INCREMENT = 1";
> $result = mysql_query($dbQuery) or die("2. Could not renumber dB
> $dbQuery" . mysql_error());
*LOL* I knew those MySQL people shouldn't have made the ALTER TABLE
syntax available to just anyone. Gun --> foot --> *BLAM*. I hope to God
you never get your hands on a real database with millions of entries.
Cheers,
Rob.
--
.------------------------------------------------------------.
| InterJinn Application Framework - http://www.interjinn.com |
:------------------------------------------------------------:
| An application and templating framework for PHP. Boasting |
| a powerful, scalable system for accessing system services |
| such as forms, properties, sessions, and caches. InterJinn |
| also provides an extremely flexible architecture for |
| creating re-usable components quickly and easily. |
`------------------------------------------------------------'
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php