MySQL не увеличава автоматично нищо друго освен цели числа. Не можете автоматично да увеличавате низ.
Не можете да използвате тригер за попълване на низ въз основа на стойността за автоматично нарастване. Причината е, че стойността за автоматично нарастване все още не е генерирана по време на изпълнението на тригерите „преди“ и е твърде късно да се променят колоните в тригерите „след“.
Вижте също моя отговор на https://stackoverflow.com/a/26899091/20860
Вероятно поради същата причина не можете да използвате виртуална колона.
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.
Ще трябва да позволите на цялото число да се увеличава автоматично и след това да използвате UPDATE, за да попълните своя низ "log-nnnnnn", след като вмъкването приключи.
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 |
+-------+-----------+