Vzhledem k tomu, že váš formátovaný sloupec závisí na sloupci id a je z něj odvoditelný, návrh vaší tabulky porušuje 3NF .
Buď vytvořte zobrazení, které obsahuje váš odvozený sloupec (viz sqlfiddle ):
CREATE VIEW myview AS
SELECT *, substring(cast(100000000 + id AS CHAR(9)), 2) AS formatted_id
FROM mytable
nebo spusťte automatické zvyšování na 10000000
, pak bude mít vždy 8 číslic:
ALTER TABLE mytable AUTO_INCREMENT = 10000000;