Re: general theory behind 'primary_key' & 'auto_increment' flags, and ON DUPLICATE KEY UPDATE ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jul 15, 2009 at 4:40 PM, Govinda<govinda.webdnatalk@xxxxxxxxx> wrote:
>
> On Jul 15, 2009, at 7:37 AM, Bastien Koert wrote:
>
>> On Wed, Jul 15, 2009 at 9:21 AM, Govinda<govinda.webdnatalk@xxxxxxxxx>
>> wrote:
>>>
>>> Reading docs..  I want to be sure of things...  have your verification of
>>> my
>>> understanding(s)-
>>>
>>> Does setting a mysql db column (say "myPrimarykeyID") with the
>>> 'primary_key'
>>> & 'auto_increment' flags totally negate the logic for ever having to use
>>> ON
>>> DUPLICATE KEY UPDATE in an INSERT?
>>>
>>> Or is it that I can do an INSERT with SET
>>> myPrimarykeyID=someAlreadyExistingVal, a=1, b=2....  ON DUPLICATE KEY
>>> UPDATE
>>>  a=edited1, b=edited2 ...
>>>
>>> I am trying to learn/work out the mysql/php code that will allow me to
>>> either create *or* edit a record, in one fell swoop.
>>>
>>> Thanks for any insight!
>>> -Govinda
>>>
>>> --
>>> PHP Database Mailing List (http://www.php.net/)
>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>
>> If that is the goal use the REPLACE INTO sql syntax
>>
>> You really don't want to allow duplicates in primary keys, that
>> completely negates the usefulness of that key
>
> well isn't it that in order for the REPLACE INTO to replace the old row I
> have to try and replace a row with an already existing uniqueID?  The same
> thing I would do to cause the INSERT..  SET .. ON DUPLICATE KEY UPDATE to
> kick in?  Don't both methods equally effectively 'prevent duplicate primary
> keys from occurring'?
>
> -G

REPLACE will do the same thing as an DELETE where KEY = and then an
INSERT or just does an insert if the KEY is not present

-- 

Bastien

Cat, the other other white meat

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux