消息102,级别15,状态1,过程审计视图,第1行“as”附近的语法不正确 [英] Msg 102, level 15, state 1, procedure auditview, line 1 incorrect syntax near 'as'

查看:122
本文介绍了消息102,级别15,状态1,过程审计视图,第1行“as”附近的语法不正确的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试从我的应用程序运行以下过程时,我收到存储过程错误

When i try to run the below procedure from my application i am getting stored procedure error as

Msg 102, Level 15, State 1, Procedure AuditView, Line 1 Incorrect syntax near 'AS'



你能帮帮我吗。


Could you please help me.

USE [AdminDB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
ALTER PROCEDURE [dbo].[usp_Purge_PurgeBsnDate]
	@BsnDate 			smalldatetime,
	@IncludeAudit		bit
AS
BEGIN
	DECLARE @ErrorReturn INT
	DECLARE @IncludePriorDates BIT
	SET NOCOUNT ON
	SET @ErrorReturn = 0
	SELECT @PriorDates = PriorDates  FROM tbl_Date WHERE BsnDate = @BsnDate
	SET @ErrorReturn = @@ERROR
	IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
	IF @PriorDates = 0
	BEGIN
		/* IncludeAudit = 1 means the business date being purged is not the current
		   system date. We don't want to purge the audit of current system date info
		   when purging a business date of that is the same date */
		IF @IncludeAudit = 1
		BEGIN
			Exec @ErrorReturn = usp_Purge_PurgeAudit @BsnDate, @IncludePriorDates, 0
			IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		END
		DELETE FROM tbl_Version WHERE BsnDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_ErrBatch WHERE BsnDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_Transport WHERE BsnDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_ReelInfo WHERE BsnDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_TrkFieldStats WHERE SystemDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_TrkStats WHERE SystemDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_UsedBatchNumber WHERE BsnDate = @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
	END
	ELSE
	BEGIN
	             Exec @ErrorReturn = usp_Purge_PurgeAudit @BsnDate, @IncludePriorDates, @IncludeAudit
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_EIVersion WHERE BsnDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_ErrBatch WHERE BsnDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_Transport WHERE BsnDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_ReelInfo WHERE BsnDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_TrkFieldStats WHERE SystemDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_TrkStats WHERE SystemDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
		DELETE FROM tbl_UsedBatchNumber WHERE BsnDate <= @BsnDate
		SET @ErrorReturn = @@ERROR
		IF @ErrorReturn <> 0 GOTO usp_PurgeBsnDate_Error
	END
	
		RETURN(0)
usp_Purge_PurgeBsnDate_Error:
	RETURN(@ErrorReturn)
END

输出消息

output msg

Msg 102, Level 15, State 1, Procedure AuditView, Line 1
Incorrect syntax near 'AS'.

(1 row(s) affected)





我尝试过:



从数据库手动执行存储过程后,我得到以下输出。



What I have tried:

After Executing the stored procedure manually from database i am getting the below output.

USE [AdminDB]
GO

DECLARE	@return_value int

EXEC	@return_value = [dbo].[usp_PurgeBsnDate]
		@BsnDate = '2018-03-16 00:00:00',
		@IncludeAudit = 1

SELECT	'Return Value' = @return_value

GO







消息102,级别15,状态1,过程AuditView,第1行

'AS'附近的语法不正确。



(1行(s)受影响)




Msg 102, Level 15, State 1, Procedure AuditView, Line 1
Incorrect syntax near 'AS'.

(1 row(s) affected)

推荐答案

根据错误消息,问题出在程序 AuditView 。由于您从此过程调用其他过程,因此可能会调用或创建调用链AuditView中的某个位置但语法被破坏。



基于输出 usp_Purge_PurgeAudit 可能就是我开始寻找的地方。
Based on the error message the problem is in procedure AuditView. Since you call other procedures from this procedure the chances are that somewhere in the call chain AuditView is called or created but the syntax is broken.

Based on the output usp_Purge_PurgeAudit would probably be the place I'd started looking from.


这篇关于消息102,级别15,状态1,过程审计视图,第1行“as”附近的语法不正确的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆