A note to the provided script.

  • First when a saw this line, I was glad to see a trick how to work around the limitiation, that the Sqlserver does not allow to change the database context within a stored proc. But playing around with it quickly revealed that this workaround does not work around.

    Statements called within an exec('...') clause are executed as a batch separate from the caller's batch, including the database context.

    Example:

    -- start example

    Use AdventureWorks;

    print db_name();

    exec('use master; print db_name();');

    print db_name();

    -- end example

    The output will be:

    AdventureWorks

    master

    AdventureWorks

Viewing 0 posts

You must be logged in to reply to this topic. Login to reply