sql - Mysql insert into duplicate key on a non-duplicate key -
i use php , mysql.
this sql works:
insert products (id, title, description) values (10, 'value1', 'value2') on duplicate key update id=10, title='value25', description='value2' my id primary key , therefor works. other fields varchars.
my real case bit different. @ this:
type introduced , together sku it's unique.
id sku title description type 1 abc 1 2 abc 2 3 def 1 so "real" key sku want use , it's not unique own. can not in case. type unique.
look below , might more clear:
abc-one // unique combination abc-two // unique combination def-one // unique combination is possible use multi insert/update sql query in case?
if define columns sku , type unique columns, on duplicate key update expression work e.g. 1 primarykey in products table.
example (based on data):
id sku title description type 1 abc 1 2 abc 2 3 def 1 //insert insert products (id, sku, type) values (4, 'ghi', 'one') on duplicate key update ... //update dataset id=1 insert products (id, sku, type) values (1, 'ghi', 'two') on duplicate key update ... //update dataset sku='abc' , type='one' insert products (id, sku, type) values (5, 'abc', 'one') on duplicate key update ... therefore see mysql documentation: https://dev.mysql.com/doc/refman/5.5/en/insert-on-duplicate.html
Comments
Post a Comment