Я знаю, что поздно, но я просто хочу поделиться тем, что я сделал для этого. Мне не разрешено добавлять другую таблицу или триггер, поэтому мне нужно сгенерировать ее в одном запросе при вставке. Для вашего случая вы можете попробовать этот запрос.
CREATE TABLE YOURTABLE(
IDNUMBER VARCHAR(7) NOT NULL PRIMARY KEY,
ENAME VARCHAR(30) not null
);
Выполнить выбор и использовать этот запрос выбора и сохранить его в параметре @IDNUMBER
(SELECT IFNULL
(CONCAT('LHPL',LPAD(
(SUBSTRING_INDEX
(MAX(`IDNUMBER`), 'LHPL',-1) + 1), 5, '0')), 'LHPL001')
AS 'IDNUMBER' FROM YOURTABLE ORDER BY `IDNUMBER` ASC)
И затем вставить запрос будет be:
INSERT INTO YOURTABLE(IDNUMBER, ENAME) VALUES
(@IDNUMBER, 'EMPLOYEE NAME');
Результат будет таким же, как и в другом ответе, но разница в том, что вам не нужно создавать другую таблицу или триггер. Я надеюсь, что я смогу помочь кому-то, у кого есть тот же случай, что и мой.