Skip to Content
avatar image
Former Member

Create Triggers on System Tables

Hi,

I want to call a certain procedure that logs everytime a database user is created or deleted in the db ( sql Anywhere 16).

For this I have written a Function that should be called via a trigger when a row is inserted or deleted from table SYS.SYSUSER.

However, I am not able to create a trigger on this table.

Am I allowed to create trigger on this or is there someother way to get notified whenever a user is created or deleted for db?

New to sybase please help.

heres is my create trigger code

    CREATE TRIGGER myTrigger AFTER INSERT ON sys.sysuser

    REFERENCING NEW AS newRecord

    FOR EACH ROW

    BEGIN

          -- call myFunction

    END;

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    avatar image
    Former Member
    Oct 17, 2014 at 07:54 AM

    Hi Sunil,

              I wouldn't change trigger of system tables. With new release you could lose your changes.

    If you want to check for new users, looking from db and not from your application, you could create a scheduled event that once a day search in:

    select user_name,creation_time

         from sysuser   join sysobject   on sysuser.object_id = sysobject.object_id

    Bye

    Add comment
    10|10000 characters needed characters exceeded

  • Oct 17, 2014 at 01:23 PM

    You may be interested in SQL Anywhere's auditing feature.

    Add comment
    10|10000 characters needed characters exceeded