Löschen eines Benutzers verhindern
Sie möchten verhindern, dass ein bestimmter Benutzer gelöscht wird? Dazu können Sie unter Oracle einen Datenbank-Trigger verwenden. Ein Beispiel:
Oracle SQL: Löschen eines Benutzers verhindern
DROP TRIGGER TrgDropUserRestriction / CREATE OR REPALCE TRIGGER TrgDropUserRestriction BEFORE DROP ON DATABASE DECLARE BEGIN IF Ora_Dict_Obj_Name IN ('SCOTT','OUTLN') THEN Raise_Application_Error( -20001, 'Cannot Drop User ' ||ora_dict_obj_name || ' Contact Your Database Administrator ' || 'For Dropping This User !'); END IF; END; /
Der Trigger läßt sich noch erweitern. So kann eine Datenbanktabelle genutzt werden, um eine flexible Liste an Datenbankbenutzern zu pflegen, die mittels Trigger geschützt werden sollen. Das Prinzip bleibt das gleiche, nur wird anstelle der "fest verdrahteten" Liste ein Datenbank-Cursor genutzt.

info
held-informatik
de