[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
- <!--x-content-type: text/plain -->
- <!--x-date: Thu Jun 9 09:32:34 2005 -->
- <!--x-from-r13: psbjyre ng bhgcbfgfragvary.pbz (Quevf Tbjyre) -->
- <!--x-message-id: [email protected] -->
- <!--x-reference: [email protected] -->
- <!--x-reference: [email protected] -->
- <!--x-reference: [email protected] -->
- <!--x-reference: [email protected] -->
- <!--x-reference: [email protected] --> "http://www.w3.org/TR/html4/loose.dtd">
- <!--x-subject: [ale] Getting the next index of a table in mysql -->
- <li><em>date</em>: Thu Jun 9 09:32:34 2005</li>
- <li><em>from</em>: cfowler at outpostsentinel.com (Chris Fowler)</li>
- <li><em>in-reply-to</em>: <<a href="msg00406.html">[email protected]</a>></li>
- <li><em>references</em>: <<a href="msg00401.html">[email protected]</a>> <<a href="msg00402.html">[email protected]</a>> <<a href="msg00403.html">[email protected]</a>> <<a href="msg00405.html">[email protected]</a>> <<a href="msg00406.html">[email protected]</a>></li>
- <li><em>subject</em>: [ale] Getting the next index of a table in mysql</li>
There is a problem if the user does do the following in an empty DB.
insert into sensor_533 values (533, now());
Now max will retrieve the 533 as the max with only one row in the DB.
> Checking the new Row ID after an insert is the only real way to go
about it.
This might be the best way but how do I do this? "select serial_no from
table_533 where ....."
The table is very simple for now.
CREATE TABLE sensor_533 (
serial_no INTEGER(9) NOT NULL AUTO_INCREMENT,
issued DATETIME NOT NULL,
PRIMARY KEY(serial_no),
);
CREATE TABLE device (
device_id INTEGER(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(20) NULL,
table_name VARCHAR(20) NULL,
PRIMARY KEY(device_id),
);
insert into device values (0, "533", "sensor_533");
Evan that method has the same problem as select max(...) In the MySQL
documents it stated that the auto_increment value was stored in memory
at startup and the program simply does a select max(...) to get the
correct value.
On Thu, 2005-06-09 at 09:05 -0400, Michael B. Trausch wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: RIPEMD160
>
> Chris Fowler wrote:
> >
> > I've attached a perl program where I hacked out a way to get the next
> > logical entry. This program does not do the insert yet.
> >
>
> Just note that if entries are added and deleted and so forth, that this
> will not be accurate. The program is selecting the highest current
> serial number, when in fact, I could add 500 rows, and then delete them
> all. The max serial would then be (next_incremented_serial-501), and
> then you'd be out of sync with the DB. In addition, when you next
> INSERT using a non-explicit ID count, you'll be out of sync.
>
> - Mike
>
> - --
> Michael B. Trausch fd0man at gmail.com
> Web: <a rel="nofollow" href="http://fd0man.theunixplace.com/">http://fd0man.theunixplace.com/</a> Jabber: mtrausch at jabber.com
> Phone: +1-(678)-522-7934 FAX (US Only): 1-866-806-4647
> =======================================================================
> Do you have PGP or GPG? Key at pgp.mit.edu, Please Encrypt E-Mail!
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.1 (GNU/Linux)
> Comment: Using GnuPG with Thunderbird - <a rel="nofollow" href="http://enigmail.mozdev.org">http://enigmail.mozdev.org</a>
>
> iD8DBQFCqD59PXInbkqM7nwRA6caAJ0Qs0pX9X9raz660ftuYrg7GulNGACfX8MH
> LkBCry3rMa+g/697ijbmr4Q=
> =KkgU
> -----END PGP SIGNATURE-----
> _______________________________________________
> Ale mailing list
> Ale at ale.org
> <a rel="nofollow" href="http://www.ale.org/mailman/listinfo/ale">http://www.ale.org/mailman/listinfo/ale</a>
</pre>
<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<hr>
<ul><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><a name="00408" href="msg00408.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> james.sumners at gmail.com (James Sumners)</li></ul></li>
<li><strong><a name="00409" href="msg00409.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> hpassau at emory.edu (Billy Passauer)</li></ul></li>
<li><strong><a name="00410" href="msg00410.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> fd0man at gmail.com (Michael B. Trausch)</li></ul></li>
</ul></li></ul>
<!--X-Follow-Ups-End-->
<!--X-References-->
<ul><li><strong>References</strong>:
<ul>
<li><strong><a name="00401" href="msg00401.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> cfowler at outpostsentinel.com (Chris Fowler)</li></ul></li>
<li><strong><a name="00402" href="msg00402.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> james.sumners at gmail.com (James Sumners)</li></ul></li>
<li><strong><a name="00403" href="msg00403.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> fd0man at gmail.com (Michael B. Trausch)</li></ul></li>
<li><strong><a name="00405" href="msg00405.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> cfowler at outpostsentinel.com (Chris Fowler)</li></ul></li>
<li><strong><a name="00406" href="msg00406.html">[ale] Getting the next index of a table in mysql</a></strong>
<ul><li><em>From:</em> fd0man at gmail.com (Michael B. Trausch)</li></ul></li>
</ul></li></ul>
<!--X-References-End-->
<!--X-BotPNI-->
<ul>
<li>Prev by Date:
<strong><a href="msg00406.html">[ale] Getting the next index of a table in mysql</a></strong>
</li>
<li>Next by Date:
<strong><a href="msg00408.html">[ale] Getting the next index of a table in mysql</a></strong>
</li>
<li>Previous by thread:
<strong><a href="msg00406.html">[ale] Getting the next index of a table in mysql</a></strong>
</li>
<li>Next by thread:
<strong><a href="msg00408.html">[ale] Getting the next index of a table in mysql</a></strong>
</li>
<li>Index(es):
<ul>
<li><a href="maillist.html#00407"><strong>Date</strong></a></li>
<li><a href="threads.html#00407"><strong>Thread</strong></a></li>
</ul>
</li>
</ul>
<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
</body>
</html>