0
我有一個包含一些字段(id,code,name,...)的表,當我想要插入新的記錄時,代碼字段應該像(ABC-001),下一條記錄應該像(ABC-002)等。 我想爲此編寫一個MYSQL程序,但我不知道如何,任何機構有任何想法?在此先感謝MYSQL連接代碼的存儲過程
我有一個包含一些字段(id,code,name,...)的表,當我想要插入新的記錄時,代碼字段應該像(ABC-001),下一條記錄應該像(ABC-002)等。 我想爲此編寫一個MYSQL程序,但我不知道如何,任何機構有任何想法?在此先感謝MYSQL連接代碼的存儲過程
首先用戶插入查詢,如:
Insert Into YourTable Values(..,'ABC',...);
現在寫更新其預期的格式設置代碼值後觸發:
CREATE TRIGGER TriggerNmae AFTER INSERT ON YourTable
FOR EACH ROW
Begin
UPDATE YourTable
SET code = concat(code,'-',LPAD(NEW.id,3,'0'));
WHERE id = New.id ;
END;
應該'id'場嚴格與'號對應代碼字段? (即,當id = 5,那麼代碼必須是ABC-005?) – 2014-11-05 11:25:03
是的,它應該是 – 2014-11-05 11:27:52
你可以在存儲過程中使用觸發器或簡單地使用LAST_INSERT_ID()。 – 2014-11-05 11:39:28