This question has been asked before but it all involved using "go" which I am not in need of here, at least I believe so.
I am following this tut https://www.youtube.com/watch?v=-xMGwiV5A6o, near the 1:25 mark exactly. And his seems to execute while mine doesn't.
Select * From Snacks
Create Proc spGetSnackByID
@Id int
as
Begin
Select Id, Name, Location
from Snacks where Id = @Id
End
Here is the exact error, being highlighted with the "BEGIN" statement:
"Msg 111, Level 15, State 1, Procedure spGetSnackByID, Line 7 'CREATE/ALTER PROCEDURE' must be the first statement in a query batch."
If you want to keep the script as it is (select followed by a create procedure), you can construct the creation of the stored procedure in a NVARCHAR
and EXECUTE
it using sp_executesql
. This way the CREATE statement is the first statement. Like this:
Select * From Snacks
EXECUTE sp_executesql N'
Create Proc spGetSnackByID
@Id int
as
Begin
Select Id, Name, Location
from Snacks where Id = @Id
End
';
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With