2012-01-18 149 views
0

Possible Duplicate:
raise error within MySql function自定義錯誤

在MSSQL中,我可以提出一個自定義錯誤:

CREATE TRIGGER [dbo].[TR__TABLE__DisableRowOnDelete] 
ON [dbo].[TABLE] 
INSTEAD OF DELETE 
AS 
BEGIN 
    RAISERROR ('Data cannot be deleted.', 16, 1); 
END 

我怎麼可能做到這一點在MySQL的?

+0

見http://stackoverflow.com/questions/465727/raise-error-within-mysql-function – Jivings 2012-01-18 16:52:11

+0

@weston使得問題是否在SO已經存在了。 – 2012-01-18 16:57:32

+1

@aF我很高興我沒有,或者我不會發現SIGNAL – weston 2012-01-18 16:59:39

回答

2

在MySQL 5.5中,您可以使用SIGNAL語句,例如, -

CREATE PROCEDURE TR__TABLE__DisableRowOnDelete() 
BEGIN 
    SIGNAL SQLSTATE '02000' SET MESSAGE_TEXT = 'Data cannot be deleted.'; 
END