php - How do I insert multiple items using one insert statement while at the same time detect if a unique column has duplicate values? -
please mark duplicate if same question exists already.
i using mysql insertion, , using pdo prepared statements. want insert array of rows database. similar question can found here multiple values insert pdo prepared statements. however, author didn't consider case when duplicates occur on unique column(s). example, consider following table:
id name counter where name has unique property , whenever existing name trying inserted counter increases 1. want insert array 3 names follows:
$name_array = array('user a','user b','user c'); suppose table has user , corresponding counter 1. in case, table after insertion follows:
id name counter 1 user 2 2 user b 1 3 user c 1 is possible me using 1 insert statement? if yes, how?
first of all: imho has nothing php, pdo or prepared statements - converting insert update special cases.
that being so, solve using insert on duplicate key update construct, somewhere along lines of
insert tablename(name) values ('user a'), ('user b'), ('user c') on duplicate key update counter=counter+1; how send query mysql server (be php/pdo or whatever) should of no importance.
Comments
Post a Comment