• Jeff Moden - Monday, February 4, 2019 6:00 AM

    Great article, Steve.

    My only quandary is where does the idea of it being preferable to include BEGIN/END come from?  Oracle?  Portability?  To be sure, I never include BEGIN/END in stored procedures mostly because it makes it more difficult to execute a part of the code during troubleshooting under the gun.  You have to remember to comment out the BEGIN and then remember to uncomment it when you're done.  It doesn't really bring anything to the game unless you know for sure that your code will be migrated to an RDBMS that requires it.

    I also realize that it's a "Beginner's" article and so it's not designed to be all encompassing.  I was happy to see the beginning of a "Flower Box" but both a more complete one and emphasizing that comments make code so much easier to troubleshoot would be good for beginners to understand.

    I totally agree. I've also seen beginners (sometimes with multiple years of "experience") wondering why there's some unexpected behavior with the procedure. The reason was that they thought that the code they wrote after the END wasn't going to be part of the procedure. This usually happens with a variable used in a SELECT for debugging or permissions granted in inappropriate environments.

    Luis C.
    General Disclaimer:
    Are you seriously taking the advice and code from someone from the internet without testing it? Do you at least understand it? Or can it easily kill your server?

    How to post data/code on a forum to get the best help: Option 1 / Option 2