Mysql aggiornata e di default
Domanda
Voglio avere una colonna in una tabella che viene aggiornato automaticamente quando la riga viene aggiornata, questa colonna è una versione soundex di un'altra colonna, ipoteticamente, qualcosa di simile a questo:
CREATE TABLE `test` (`title` VARCHAR(255), `title_soundex` VARCHAR(255) DEFAULT SOUNDEX(`title`) ON UPDATE SOUNDEX(`title`));
Qualcosa di simile a questo è ancora possibile? C'è qualche altri approcci per rendere questo accada solo su MySQL senza aggiornare il codice che utilizza questo tavolo?
Soluzione
Sì, è possibile, ma non con i vincoli.
Si avrebbe bisogno di creare un aggiornamento sul trigger nella tabella test
che avrebbe controllare se il titolo è stato aggiornato, e in tal caso, aggiornare il campo title_soundex.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow