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
25311
November 17, 2005 04:00AM
16834
November 17, 2005 06:58AM
23796
November 19, 2005 08:53AM
Re: How to Raise Error ?
14608
February 23, 2006 02:28AM
10871
February 23, 2006 04:42AM
15604
February 24, 2006 08:28AM
8578
February 24, 2006 10:15AM
6359
February 24, 2006 12:42PM
7978
February 27, 2006 08:56AM
6769
February 27, 2006 11:27AM
18977
February 28, 2006 05:22AM
6626
December 20, 2006 03:34AM
4177
November 18, 2008 08:28AM
4842
November 18, 2008 12:45PM
6270
December 19, 2006 11:00AM
5064
December 19, 2006 02:35PM
6309
December 19, 2006 07:53PM
4493
December 20, 2006 03:37AM
4710
December 19, 2006 11:01AM
5584
November 24, 2006 05:32AM
4550
November 24, 2006 07:02AM
3693
December 23, 2008 06:08AM
11354
February 25, 2006 11:48PM
5031
December 19, 2007 04:24AM
4011
December 24, 2008 01:02PM
4834
December 19, 2007 03:59AM
4715
December 19, 2007 05:09AM
3589
November 18, 2008 08:25AM
3972
November 18, 2008 12:49PM
6096
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.