How can the handling of primary keys in a MySQL database affect the creation of duplicate entries when using PHP to insert or update data?

When handling primary keys in a MySQL database, it is important to ensure that the primary key is unique for each record. If duplicate primary keys are inserted or updated using PHP, it can lead to the creation of duplicate entries or errors in the database. To prevent this issue, you can use the ON DUPLICATE KEY UPDATE clause in your SQL query to handle duplicate entries by updating the existing record instead of inserting a new one.

// Assuming $conn is your database connection
$sql = "INSERT INTO table_name (id, column1, column2) VALUES (1, 'value1', 'value2') 
        ON DUPLICATE KEY UPDATE column1 = 'value1', column2 = 'value2'";
$result = mysqli_query($conn, $sql);

if($result) {
    echo "Record inserted or updated successfully";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}