AUTO_INCREMENT
jsou nastaveny až po vložit.
Pokud potřebujete přístup tuto hodnotu můžete pouze v AFTER INSERT
spoušť. Nemůžete však upravit hodnotu sloupce v AFTER UPDATE
spoušť...
Kromě toho nemůžete provést aktualizaci tabulky použité ve vašem AFTER INSERT
spouštět jako (http://dev.mysql. com/doc/refman/5.0/en/stored-program-restrictions.html
):
Zde by jediným rozumným řešením bylo vytvořit uloženou proceduru pro aktualizaci tabulky, upravením příslušných sloupců v transakci tak, aby „emulovaly“ váš příkaz atomic insert.
Jak již bylo řečeno, ve vašem konkrétním případě , key
sloupec je nadbytečný, protože tento sloupec je pouze zřetězením dvou dalších sloupců stejného řádku.
Vzhledem k jeho názvu, nehledáte místo toho způsob, jak vytvořit složený klíč? Něco takového:
ALTER TABLE tbl ADD UNIQUE KEY (countryCode, id);