On 9/23/13 11:12 AM, I wrote:
> On 9/23/13 11:01 AM, Amit Khandekar wrote:
>> The assert levels sound a bit like a user might be confused by these levels
>> being present at both places: In the RAISE syntax itself, and the assert
>> GUC level. But I like the syntax. How about keeping the ASSERT keyword
>> optional ? When we have WHEN, we anyway mean that we ware asserting that
>> this condition must be true. So something like this :
>>
>> RAISE [ level ] 'format' [, expression [, ... ]] [ USING option =
>> expression [, ... ] ];
>> RAISE [ level ] condition_name [ USING option = expression [, ... ] ];
>> RAISE [ level ] SQLSTATE 'sqlstate' [ USING option = expression [, ... ] ];
>> RAISE [ level ] USING option = expression [, ... ];
>> *RAISE [ ASSERT ] WHEN bool_expression;*
>> RAISE ;
>
> I'd expect RAISE .. WHEN ..; to be the same as:
>
> IF .. THEN
> RAISE;
> END IF;
Should've probably proofread that one. I meant:
RAISE WHEN true;
would be equivalent to
IF true THEN RAISE; END IF;
Regards,
Marko Tiikkaja