AUTO_INCREMENT
le colonne vengono impostate solo dopo inserire.
Se devi accedere quel valore, puoi solo in un AFTER INSERT
grilletto. Tuttavia, non puoi modificare un valore di colonna in un AFTER UPDATE
innesco...
Inoltre, non puoi eseguire un aggiornamento sulla tabella utilizzata nel tuo AFTER INSERT
trigger as (http://dev.mysql. com/doc/refman/5.0/en/stored-program-restrictions.html
):
Qui l'unica soluzione ragionevole sarebbe quella di creare una procedura memorizzata per aggiornare la tabella, regolando le colonne pertinenti in una transazione per "emulare" la tua istruzione di inserimento atomico.
Detto questo, nel tuo caso particolare , il key
colonna è ridondante poiché quella colonna è solo la concatenazione di altre due colonne della stessa riga.
Dato il suo nome, non stai invece cercando un modo per creare una chiave composta? Qualcosa del genere:
ALTER TABLE tbl ADD UNIQUE KEY (countryCode, id);