2014-11-05 82 views
0

我有一個包含一些字段(id,code,name,...)的表,當我想要插入新的記錄時,代碼字段應該像(ABC-001),下一條記錄應該像(ABC-002)等。 我想爲此編寫一個MYSQL程序,但我不知道如何,任何機構有任何想法?在此先感謝MYSQL連接代碼的存儲過程

+0

應該'id'場嚴格與'號對應代碼字段? (即,當id = 5,那麼代碼必須是ABC-005?) – 2014-11-05 11:25:03

+0

是的,它應該是 – 2014-11-05 11:27:52

+0

你可以在存儲過程中使用觸發器或簡單地使用LAST_INSERT_ID()。 – 2014-11-05 11:39:28

回答

0

首先用戶插入查詢,如:

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;