Из документации MySQL только подсистема хранения NDB поддерживает вычисляемые столбцы.Я предполагаю, что вы используете механизм хранения по умолчанию InnoDB, поэтому вы не сможете использовать вычисляемые столбцы.
Кроме того, вы, похоже, смешиваете синтаксис SQL Server и MySQL.
Принимая во внимание оба этих аспекта, я предлагаю использовать следующий оператор create, а затем создать представление поверх таблицы, которое сгенерирует требуемый идентификатор элемента:
CREATE TABLE Foods (
ID int NOT NULL AUTO_INCREMENT,
item_name varchar(10),
price int,
PRIMARY KEY(ID)
);
Затем создайте представление, которое может повернутьсяиз вычисленных элементов, которые вы хотите:
CREATE VIEW Foods_View AS (
SELECT
ID,
RIGHT(CONCAT('00000000', CAST(ID AS CHAR(8))), 8) AS ItemId,
item_name,
price
FROM Foods
)