Die lange Antwort: Die Zeilennummer wird aus der CREATE PROCEDUREAnweisung gezählt, plus alle Leerzeilen oder Kommentarzeilen, die Sie möglicherweise darüber hatten, als Sie die CREATEAnweisung tatsächlich ausgeführt haben , aber keine Zeilen vor einer GOAnweisung gezählt haben…
Ich fand es viel einfacher, einen gespeicherten Prozess zum Herumspielen zu erstellen, um Folgendes zu bestätigen:
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE ErrorTesting
-- Add the parameters for the stored procedure here
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT 1/0
END
GO
Nachdem Sie es erstellt haben, können Sie es ändern ALTER PROCEDUREund einige leere Zeilen über den Kommentaren und über und unter der ersten GOAnweisung hinzufügen , um den Effekt zu sehen.
Eine sehr seltsame Sache, die mir auffiel, war, dass ich EXEC ErrorTestingin einem neuen Abfragefenster laufen musste, anstatt es am unteren Rand desselben Fensters hervorzuheben und zu laufen ... Als ich das tat, stiegen die Zeilennummern weiter an! Ich bin mir nicht sicher, warum das passiert ist.