But can't you put a <cflock /> around the query that inserts the
record and retrieves the last ID?

On Mon, Mar 24, 2008 at 8:59 AM, Mark Fuqua <[EMAIL PROTECTED]> wrote:
> What if you have four concurrent users (or four hundred if your app get
>  popular!), what happens if user two gets user three's id when she runs
>  LAST_INSERT_ID()?
>
>  That's the one of the only reasons I can see for using alternate keys.
>  Whether it is a UUID created in Coldfusion or someother unique value...you
>  KNOW what it is...everytime, because you set it, not the DB.
>
>  Mark
>
>
>
>
>  -----Original Message-----
>  From: Rick Faircloth [mailto:[EMAIL PROTECTED]
>
>
> Sent: Monday, March 24, 2008 8:22 AM
>  To: CF-Talk
>  Subject: RE: Any "Gotcha's" in using CF UUID for db record primary key?
>
>  What's the reason for using the db instead of CF to
>  generate the UUID?  To keep the load off CF?
>
>  I was thinking I might use CF in the following manner to generate
>  a UUID for a record:
>
>  - Create UUID and variable to hold UUID via CF and cfset
>  - User completes form with textual information and photo selection via
>  cffile
>  - Run insert query to create primary textual record, including inserting
>  UUID
>  - Run second insert query to create records in photo table for each
>   cffile field mentioned above, inserting UUID for relational key to textual
>  information
>
>  After doing some reading in the MySQL 5 docs, it looks like I could use the
>  LAST_INSERT_ID() function to return the auto-incrementing primary key of the
>  "main"
>  textual record of a property (Real Estate property), then run an insert
>  query for the
>  photo records on another table, using the LAST_INSERT_ID() as the relational
>  key to the
>  primary property table.
>
>  - User completes form with primary record info and selects photos
>  - Insert query runs creating primary property record
>  - Run another query to retrieve LAST_INSERT_ID() (or just use that value as
>  a variable,
>  #LAST_INSERT_ID()# ???)
>  - Run another query to insert photos into photo table using LAST_INSERT_ID
>  as relational key
>
>  Using LAST_INSERT_ID(), it seems that I could allow a single input form for
>  two tables,
>  property and property_photos, create a more user-friendly work flow, and
>  avoid the
>  "messiness" of UUID altogether.
>
>  Thoughts?
>
>  Rick
>
>
>  > -----Original Message-----
>  > From: Dave Watts [mailto:[EMAIL PROTECTED]
>  > Sent: Sunday, March 23, 2008 11:48 PM
>  > To: CF-Talk
>  > Subject: RE: Any "Gotcha's" in using CF UUID for db record primary key?
>  >
>  > > At the same time I kind of DON'T agree with them if you're
>  > > doing what we were doing: if you're using the key to link
>  > > tables (so that you can combine multiple databases easily)
>  > > and using them to link to non-DB information (log files, etc)
>  > > then it seems like extra work to do a "real" auto-increment
>  > > PK as well.
>  >
>  > I'll second this. Either use UUIDs or don't. In either case, I'd recommend
>  > that you use your database's ability to generate these instead of doing it
>  > from CF.
>  >
>  > Dave Watts, CTO, Fig Leaf Software
>  > http://www.figleaf.com/
>  >
>  > Fig Leaf Training: Adobe/Google/Paperthin Certified Partners
>  > http://training.figleaf.com/
>  >
>  > WebManiacs 2008: the ultimate conference for CF/Flex/AIR developers!
>  > http://www.webmaniacsconference.com/
>  >
>  >
>
>
>
>  

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to 
date
Get the Free Trial
http://ad.doubleclick.net/clk;160198600;22374440;w

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:301906
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

Reply via email to