MySQL øger ikke automatisk andet end heltal. Du kan ikke automatisk øge en streng.
Du kan ikke bruge en trigger til at udfylde en streng baseret på den automatiske stigningsværdi. Årsagen er, at den automatiske stigningsværdi ikke er genereret endnu på tidspunktet "før"-udløsere udføres, og det er for sent at ændre kolonner i "efter"-udløsere.
Se også mit svar til https://stackoverflow.com/a/26899091/20860
Du kan ikke bruge en virtuel kolonne, sandsynligvis af samme grund.
mysql> create table t (id int(5) zerofill auto_increment primary key,
virtcolumn char(8) as (concat('log-', id)));
ERROR 3109 (HY000): Generated column 'virtcolumn' cannot refer to auto-increment column.
Du bliver nødt til at lade det heltal automatisk stige, og derefter bruge UPDATE til at udfylde din "log-nnnnnn"-streng, efter at indsættelsen er færdig.
CREATE TABLE `t` (
`id` int(5) unsigned zerofill NOT NULL AUTO_INCREMENT,
`log` char(9) DEFAULT NULL,
PRIMARY KEY (`id`)
);
INSERT INTO `t` () VALUES ();
UPDATE `t` SET `log` = CONCAT('log-', `id`) WHERE `id` = LAST_INSERT_ID();
SELECT * FROM `t`;
+-------+-----------+
| id | log |
+-------+-----------+
| 00001 | log-00001 |
+-------+-----------+