I have this python function which inserts to a SQL database. The script is such that every time it is rerun it will have to insert the same row over again in addition to new rows. Eventually I will be changing this so that it only inserts new rows but for now I have to work with some sort of update statement. I'm aware that I can use MERGE in SQL Server to achieve something similar to MySQL's ON DUPLICATE KEY UPDATE, but I'm not exactly sure how it should be used. Any advice is welcome. Thanks! def sqlInsrt(headers, values): #create string input of mylisth strheaders = ','.join(str(i) for i in headers) #create string ? param's for INSERT clause placestr = ','.join(i for i in ["?" for i in headers]) #create string ? param's for UPDATE clause replacestr = ', '.join(['{}=?'.format(h) for h in headers]) #Setup and execute SQL query insert = ("INSERT INTO "+part+" ("+strheaders+") VALUES ("+placestr+")") cursor.execute(insert, values) cnx.commit() Continue reading...