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

MySQL po aktivaci vložení získá automaticky zvýšenou hodnotu, hodnota pole aktualizace po vložení zobrazí chybu Neznámý sloupec

Vypadá to jako trochu hackovací práce, ale podařilo se mi to zprovoznit pomocí funkce LAST_INSERT_ID() zabudované do MySQL.

CREATE TRIGGER `order_guide_insert_trigger`
BEFORE INSERT ON `order_guide`
FOR EACH ROW 
BEGIN
    IF NEW.Sort_Placement IS NULL THEN
        SET NEW.Sort_Placement = LAST_INSERT_ID() + 1;
    END IF;
END;

To také funguje a zdá se, že funguje

CREATE TRIGGER `order_guide_insert_trigger`
BEFORE INSERT ON `order_guide`
FOR EACH ROW 
BEGIN
    IF NEW.Sort_Placement IS NULL THEN
        SET NEW.Sort_Placement = (SELECT ID FROM order_Guide ORDER BY id DESC LIMIT 1) + 1;
    END IF;
END;


  1. MySQL dotaz k získání nejprodávanějších produktů

  2. Jak načíst obsah souboru .sql do R skriptu pro spuštění dotazu?

  3. Kde MySQL ukládá databázové soubory ve Windows a jaké jsou názvy souborů?

  4. Nastavení vyšší velikosti Oracle načítání řádků zpomalí moji aplikaci?