Mysql
 sql >> Base de données >  >> RDS >> Mysql

Réutiliser les lignes dans la table mysql sans incrémentation automatique

Une meilleure solution serait de définir une clé unique sur le flux (en plus de la clé auto-incrémentée). Utilisez ensuite INSERT ON DUPLICATE KEY UPDATE

INSERT INTO feeds (name, url, etc, etc2, `update_count`) 
    VALUES ('name', 'url', 'etc', 'etc2', 1) 
    ON DUPLICATE KEY UPDATE
        `etc` = VALUES(`etc`),
        `etc2` = VALUES(`etc2`),
        `update_count` = `update_count` + 1;

L'avantage est que vous n'incrémentez pas les identifiants et que vous le faites toujours dans une requête atomique. De plus, vous ne faites que mettre à jour/changer ce que vous devez changer. (Notez que j'ai inclus le update_count colonne pour montrer comment mettre à jour un champ)...