Als je dit echt nodig hebt, kun je je doel bereiken met behulp van een aparte tabel voor sequencing (als je het niet erg vindt) en een trigger.
Tafels
CREATE TABLE table1_seq
(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
CREATE TABLE table1
(
id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT '0', name VARCHAR(30)
);
Nu de trekker
DELIMITER $$
CREATE TRIGGER tg_table1_insert
BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO table1_seq VALUES (NULL);
SET NEW.id = CONCAT('LHPL', LPAD(LAST_INSERT_ID(), 3, '0'));
END$$
DELIMITER ;
Dan voeg je gewoon rijen toe aan tabel1
INSERT INTO Table1 (name)
VALUES ('Jhon'), ('Mark');
En je hebt
| ID | NAME | ------------------ | LHPL001 | Jhon | | LHPL002 | Mark |
Hier is SQLFiddle demo