Getting "There is already an object named 'Mytable' in the database" error
Look at the source code for trigger tr_AuditTableChange.

If it's creating a permanent table, see if it can use a #temp table instead, or better yet simple normal variables.

If it must use a permanent table, then quit creating and/or dropping that table, and leave it in place permanently.  If you have multiple sessions possibly stepping on each other, add @@SPID, but this is a bad technique in the first place.

For an auditing trigger, the auditing should do at most the following things


Insert into your audit table (which should have INSERT only permissions for normal users - no SELECT, no UPDATE, no DELETE).
ROLLBACK unauthorized transactions (if absolutely required)
Notify administrators of unauthorized transactions (if absolutely required).