[Zope] Trying ZODB with a background in RDBMS
Thomas Bennett
bennetttm at appstate.edu
Thu Aug 14 14:01:46 EDT 2008
This may help in addition to Jonathan's suggestion.
In PostgreSQL when you create a serial field for that
purpose it actually creates an integer field with a modifier
similar to this:
not null default nextval(('"dl_articlereq_id_seq"'::text)::regclass)
where dl_article is the table in which id is the integer field
created. Also created is a sequence with this format:
sequence_name | last_value | increment_by | max_value | min_value | cache_value | log_cnt | is_cycled | is_called
--------------------------------+------------+------------------------+------------------+---------------+-------------------+-----------+---------------+-----------
dl_articlereq_id_seq | 288 | 1 | 2147483647 | 1 | 1 | 0 | f | t
so you can get the last record value from last_value field.
I'm feel sure mySQL is similar.
Hope you can use this.
Thomas
On Thursday 14 August 2008 04:40, Phillip B Oldham wrote:
> Hi all. I'm playing with standalone ZODB at the moment trying to get a
> better understanding of its use in applications. I come from a
> PHP/MySQL background, and I'm taking my first steps with Python at the
> same time.
>
> One of the things I'm not understanding about ZODB is assigning
> incremental IDs to objects. For instance, if I were to be writing a
> support-ticket system I'd want to give each ticket a unique number,
> but one that's "human-useable" (otherwise you could just use a UUID -
> try giving one of those over the phone!).
>
> Also, how would one add a new item to the db in this way?
>
> For instance:
>
> class Ticket(Persistence):
> def __init__(self):
> self.id = '' # How do I add a new incremental ID here?
>
> # and later on in the app
>
> tkt = Ticket()
> dbroot[?????] = tkt
>
> How would one assign a unique ID to the root at that point?
--
====================================================================
Thomas McMillan Grant Bennett Appalachian State University
Operations & Systems Analyst P O Box 32026
University Library Boone, North Carolina 28608
(828) 262 6587
"... using OpenOffice.org, and save them back to disk automatically,
in MS Word format. They surf the Web, check e-mail, do instant
messaging, view YouTube videos, visit their Facebook pages, learn
touch-typing skills and lots more. Our public library has been
offering these Linux public stations for the past three years."
- Phil Shapiro Linux Journal January 2008
Library Systems Help Desk: https://www.library.appstate.edu/help/
====================================================================
More information about the Zope
mailing list