MySQL Forums
Forum List  »  Triggers

Re: How to Raise Error ?
Posted by: Zigmund Bulinsh
Date: February 23, 2006 02:28AM

To raise error in transaction or trigger the best way is to use not existable procedure. For example:

delimiter |
create trigger settings_before_insert before insert on _settings
for each row
begin
if (select ifnull(count(*),0) from _settings)=1 then
call ERROR_INSERT_NOT_ALLOWED();
end if;
end;
| delimiter;

And then in Delphi (of course) you simply can intercept this exception and show your message instead of this. Of course procedure ERROR_INSERT_NOT_ALLOWED must not exist.
I saw stupid decision of this problem with using a table with unique index on some field and insert then two same records - don't use this stupid method, my method is better.

Options: ReplyQuote


Subject
Views
Written By
Posted
24968
November 17, 2005 04:00AM
16698
November 17, 2005 06:58AM
23648
November 19, 2005 08:53AM
Re: How to Raise Error ?
14479
February 23, 2006 02:28AM
10765
February 23, 2006 04:42AM
15424
February 24, 2006 08:28AM
8466
February 24, 2006 10:15AM
6244
February 24, 2006 12:42PM
7872
February 27, 2006 08:56AM
6670
February 27, 2006 11:27AM
18856
February 28, 2006 05:22AM
6516
December 20, 2006 03:34AM
4074
November 18, 2008 08:28AM
4724
November 18, 2008 12:45PM
6132
December 19, 2006 11:00AM
4939
December 19, 2006 02:35PM
6190
December 19, 2006 07:53PM
4387
December 20, 2006 03:37AM
4589
December 19, 2006 11:01AM
5471
November 24, 2006 05:32AM
4448
November 24, 2006 07:02AM
3591
December 23, 2008 06:08AM
11114
February 25, 2006 11:48PM
4929
December 19, 2007 04:24AM
3903
December 24, 2008 01:02PM
4743
December 19, 2007 03:59AM
4607
December 19, 2007 05:09AM
3504
November 18, 2008 08:25AM
3885
November 18, 2008 12:49PM
5984
December 19, 2007 04:46AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.