I already have that covered. Now consider how in embedded SQL you are
going to know the value of id when executing "INSERT INTO tablename
VALUES(null, ...)", where the table structure is (id INT UNIQUE PRIMARY
KEY AUTO_INCREMENT, ...)

Hence I need an identifier that the inserting process knows about to
grab a handle back to that exact row.

Regards,
 

Michael S. E. Kraus
Software Developer/Technical Support Specialist
Wild Technology Pty Ltd
[EMAIL PROTECTED]
Direct Line 02-8306-0007 
________________________________

ABN 98 091 470 692
Level 4 Tiara, 306/9 Crystal Street, Waterloo NSW 2017, Australia
Telephone 1300-13-9453 |  Facsimile 1300-88-9453
http://www.wildtechnology.net
 

The information contained in this email message and any attachments may
be confidential information and may also be the subject of client legal
- legal professional privilege. If you are not the intended recipient,
any use, interference with, disclosure or copying of this material is
unauthorised and prohibited.   This email and any attachments are also
subject to copyright.  No part of them may be reproduced, adapted or
transmitted without the written permission of the copyright owner.  If
you have received this email in error, please immediately advise the
sender by return email and delete the message from your system.


-----Original Message-----
From: Glen Turner [mailto:[EMAIL PROTECTED] 
Sent: Monday, 18 October 2004 12:41 PM
To: Michael Kraus
Cc: Robert Collins; [EMAIL PROTECTED]
Subject: Re: [SLUG] Maximum process ID

Michael Kraus wrote:
> G'day again... 
> 
> Actually, I want the PID for neither of the reasons you've said. 
> Rather, I'm using the PID and the date/time as a unique identifier to 
> a database row. The main contents of the row could occur more than 
> once in the table I'm working with - however we want to link this 
> exact row with rows in other tables in the database. Initially I 
> thought about using the date/time as an identifier (which I was 
> storing anyway), but remembered that two instances of the script could

> be running concurrently, so decided to incorporate the PID to ensure
uniqueness.

If your database can't hand you a unique ID for a row of a table then
find another one.  Doesn't MySQL have autoincrement fields which do
this:

   CREATE TABLE t (id INT  NOT NULL  PRIMARY KEY  AUTO_INCREMENT,
                   data VARCHAR(100));

   INSERT INTO t (id, data) VALUES (NULL, 'data');

where the NULL value results in the insertion of a unique number one
greater than any other value in that field?

Note that there's no race condition, as if both clients hand up NULL
simultaneously the DB server will assign a value to one client's insert
and then the other client's insert.

Cheers,
Glen
--
SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/
Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html

Reply via email to