我有以下触发器来检查是否使用了空格>配额并将配额增加5.配额成功递增,但屏幕上不显示RAISE NOTICE。
CREATE OR REPLACE FUNCTION checkspaceused() RETURNS TRIGGER AS $cssubscription$
DECLARE
new_spaceused INTEGER;
new_id INTEGER;
new_quota INTEGER ;
BEGIN
IF(TG_OP='UPDATE') THEN
IF NEW.spaceused > NEW.quota THEN
RAISE NOTICE 'Limit breached';
UPDATE subscription SET quota = NEW.spaceused + 5 where u_id = NEW.u_id;
END IF ;
END IF;
RETURN NEW;
END;
$cssubscription$ LANGUAGE plpgsql;
CREATE TRIGGER checkspaceused AFTER UPDATE ON subscription FOR EACH ROW EXECUTE PROCEDURE checkspaceused();
请帮助。
答案 0 :(得分:6)
检查会话中client_min_messages
的值 - 应该NOTICE
或更高版本才能看到通知。
答案 1 :(得分:1)
在执行功能之前执行此操作。
Sub UniqueVal2Range()
Dim Arr As New Collection, a
Dim Item As Variant
Dim vRng As Range
Lr = Sheet1.Cells(Rows.Count, "A").End(xlUp).Row 'Range Last Row
Set vRng = Sheet1.Range("A2:A" & Lr)
If vRng.Count > 0 Then
'---Making Unique Values
On Error Resume Next
For Each a In vRng
Arr.Add a, a
Next
On Error GoTo 0
'---Printing Unique Values
For Each Item In Arr
Debug.Print Item
Next Item
End If
End Sub
...,然后检查消息选项卡(如果使用pgAdmin)