I created a table that contains a UNIQUE 'mobile_no' like
09727048248 9727048248 9824578564 9898998998
Then I am going to check whether or not the mobile number is valid, and if it's valid then I want to change it into the proper format like 919727048248.
For that I called update query like..
update bccontacts set mobile_no='919727048248' where mobile_no=09727048248
The first time it ran successfully, but the second time it replied
ERROR 1062 (23000):Duplicate entry '919727048248' for key 'mobile_no'
Because there is already a unique key set for the 'mobile_no'.
So is there any other query which will IGNORE DUPLICATE KEY ON UPDATE
?
Use the INSERT IGNORE command rather than the INSERT command. If a record doesn't duplicate an existing record, then MySQL inserts it as usual. If the record is a duplicate, then the IGNORE keyword tells MySQL to discard it silently without generating an error.
Using COUNT(*) = 0. To avoid duplicates, the COUNT or records returned by the subquery above should be zero. Note: You can design any query visually in a diagram using the Query Builder feature of dbForge Studio for SQL Server.
Use UPDATE IGNORE
:
update IGNORE bccontacts set mobile_no='919727048248' where mobile_no=09727048248
More info here: http://dev.mysql.com/doc/refman/5.0/en/update.html
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With