• skempf (7/11/2013)


    But shouldn't the trigger exit prior to getting to the part where the user doesn't have permissions? Or does it automatically check for permissions regardless of whether the code is ever executed?

    It won't just exit at some point. The reason you would use EXECUTE AS is so that when the trigger runs, it runs as though it is the user with elevated permissions instead of the current user that doesn't have access to that table. This allows the user to execute the code without the need to give them permission.

    _______________________________________________________________

    Need help? Help us help you.

    Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.

    Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.

    Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
    Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
    Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
    Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/