Collections:
Ending Stored Procedures Properly in SQL Server
How To End a Stored Procedure Properly in SQL Server Transact-SQL?
✍: FYIcenter.com
Where the end of the "CREATE PROCEDURE" statement structure? The answer is simple, the end of the statement batch.
Even if you are using a "BEGIN ... END" statement block, the stored procedure structure is not going to end at the end of the statement block. It will continue to the end of the statement batch, usually the GO command. The tutorial exercise gives you a good example:
USE FyiCenterData; GO DROP PROCEDURE ShowFaq; DROP TABLE Faq; GO -- How this statement batch will be executed? CREATE PROCEDURE ShowFaq AS BEGIN PRINT 'Number of questions:'; SELECT COUNT(*) FROM Faq; PRINT 'First 5 questions:' SELECT TOP 5 * FROM Faq; END; CREATE TABLE Faq (Question VARCHAR(80)); GO EXEC ShowFaq; GO Number of questions: Msg 208, Level 16, State 1, Procedure ShowFaq, Line 3 Invalid object name 'Faq'.
What happened here was that the "CREATE TABLE" statement was not executed. It was included as part of the stored procedure "ShowFaq". This is why you were getting the error "Invalid object name 'Faq'."
⇒ Generating CREATE PROCEDURE Scripts on Existing Stored Procedures in SQL Server
⇐ Creating Stored Procedures with Statement Blocks in SQL Server
2017-01-05, 4969🔥, 0💬
Popular Posts:
How To Query Tables and Loop through the Returning Rows in MySQL? The best way to query tables and l...
How To Fix the INSERT Command Denied Error in MySQL? The reason for getting the "1142: INSERT comman...
How To Count Rows with the COUNT(*) Function in SQL Server? If you want to count the number of rows,...
What Are the Underflow and Overflow Behaviors on FLOAT Literals in SQL Server Transact-SQL? If you e...
How To Assign Debug Privileges to a User in Oracle? In order to run SQL Developer in debug mode, the...