sql >> Databáze >  >> RDS >> Mysql

Znovu použít řádky v tabulce mysql bez automatického zvyšování

Lepším řešením by bylo nastavit na zdroj jedinečný klíč (kromě automaticky inkrementovaného klíče). Poté použijte 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;

Výhodou je, že nezvyšujete ID a stále to děláte v jednom atomickém dotazu. Navíc aktualizujete/měníte pouze to, co změnit potřebujete. (Všimněte si, že jsem zahrnul update_count sloupec, který ukazuje, jak aktualizovat pole)...



  1. Jak nainstalovat Adminer na jeho vlastní aplikaci

  2. Nejúčinnější způsob klonování databáze AWS RDS?

  3. Hledejte shodu celého slova v MySQL

  4. Nejlepší způsob, jak udržet pole TEXT jedinečné v databázi MySQL