I have writen this Store Procedur and it says "Incorrect Syntax near the key word AS"
ALTER PROCEDURE dbo.User_Announcement_Create
@Announcement_ID int,
@Announcement nvarchar(250),
@Sent_Date datetime,
@UserId uniqueidentifier,
AS
BEGIN
DECLARE @NewAnnouncement_ID int
SELECT @NewAnnouncement_ID= NULL
DECLARE @NewAnnouncement nvarchar(250)
SELECT @NewAnnouncement= NULL
SELECT @Sent_Date= NULL
IF( @UserId IS NULL )
SELECT @UserId = NEWID()
ELSE
IF( EXISTS( SELECT UserId FROM dbo.aspnet_Users
WHERE @UserId = UserId ) )
RETURN -1
END
DECLARE @CreateAnnouncement bit
DECLARE @ReturnValue int
SET @ReturnValue = 0
DECLARE @ErrorCode int
SET @ErrorCode = 0
DECLARE @TranStarted bit
SET @TranStarted = 0
IF( @@TRANCOUNT = 0 )
BEGIN
BEGIN TRANSACTION
SET @TranStarted = 1
END
ELSE
SET @TranStarted = 0
IF( @@ERROR <> 0 )
BEGIN
SET @ErrorCode = -1
GOTO Cleanup
END
SELECT @NewAnnouncement_ID = Announcement_ID, @NewAnnouncement = Announcement FROM dbo.User_Announcement_Create
IF ( @NewAnnouncement_ID IS NULL )
BEGIN
SET @NewAnnouncement_ID = @Announcement_ID
SET @CreateAnnouncement = 1
END
ELSE
BEGIN
SET @CreateAnnouncement = 0
IF( @NewAnnouncement_ID <> @Announcement_ID AND @Announcement_ID IS NOT NULL )
BEGIN
SET @ErrorCode = 6
GOTO Cleanup
END
END
BEGIN
SET @ErrorCode = 6
GOTO Cleanup
END
IF (@CreateAnnouncement = 0)
BEGIN
UPDATE Announcements
SET Sent_Date = @Sent_Date
WHERE @Announcement_ID = Announcement_ID
IF( @@ERROR <> 0 )
BEGIN
SET @ErrorCode = -1
GOTO Cleanup
END
END
INSERT INTO Announcements
( Announcement_ID,
Announcemen,
Sent_Date,
UserId )
VALUES( @Announcement_ID,
@Announcement,
@Sent_Date,
@UserId )
IF( @@ERROR <> 0 )
BEGIN
SET @ErrorCode = -1
GOTO Cleanup
END
IF( @TranStarted = 1 )
BEGIN
SET @TranStarted = 0
COMMIT TRANSACTION
END
RETURN 0
Cleanup:
IF( @TranStarted = 1 )
BEGIN
SET @TranStarted = 0
ROLLBACK TRANSACTION
END
RETURN @ErrorCode
kylet89
Member
5 Points
16 Posts
Incorrect Syntax near the key word AS why????
Aug 09, 2012 11:22 PM|LINK
I have writen this Store Procedur and it says "Incorrect Syntax near the key word AS"
ALTER PROCEDURE dbo.User_Announcement_Create @Announcement_ID int, @Announcement nvarchar(250), @Sent_Date datetime, @UserId uniqueidentifier, AS BEGIN DECLARE @NewAnnouncement_ID int SELECT @NewAnnouncement_ID= NULL DECLARE @NewAnnouncement nvarchar(250) SELECT @NewAnnouncement= NULL SELECT @Sent_Date= NULL IF( @UserId IS NULL ) SELECT @UserId = NEWID() ELSE IF( EXISTS( SELECT UserId FROM dbo.aspnet_Users WHERE @UserId = UserId ) ) RETURN -1 END DECLARE @CreateAnnouncement bit DECLARE @ReturnValue int SET @ReturnValue = 0 DECLARE @ErrorCode int SET @ErrorCode = 0 DECLARE @TranStarted bit SET @TranStarted = 0 IF( @@TRANCOUNT = 0 ) BEGIN BEGIN TRANSACTION SET @TranStarted = 1 END ELSE SET @TranStarted = 0 IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END SELECT @NewAnnouncement_ID = Announcement_ID, @NewAnnouncement = Announcement FROM dbo.User_Announcement_Create IF ( @NewAnnouncement_ID IS NULL ) BEGIN SET @NewAnnouncement_ID = @Announcement_ID SET @CreateAnnouncement = 1 END ELSE BEGIN SET @CreateAnnouncement = 0 IF( @NewAnnouncement_ID <> @Announcement_ID AND @Announcement_ID IS NOT NULL ) BEGIN SET @ErrorCode = 6 GOTO Cleanup END END BEGIN SET @ErrorCode = 6 GOTO Cleanup END IF (@CreateAnnouncement = 0) BEGIN UPDATE Announcements SET Sent_Date = @Sent_Date WHERE @Announcement_ID = Announcement_ID IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END END INSERT INTO Announcements ( Announcement_ID, Announcemen, Sent_Date, UserId ) VALUES( @Announcement_ID, @Announcement, @Sent_Date, @UserId ) IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END IF( @TranStarted = 1 ) BEGIN SET @TranStarted = 0 COMMIT TRANSACTION END RETURN 0 Cleanup: IF( @TranStarted = 1 ) BEGIN SET @TranStarted = 0 ROLLBACK TRANSACTION END RETURN @ErrorCodecan someone help please
bpw
Contributor
2258 Points
490 Posts
Re: Incorrect Syntax near the key word AS why????
Aug 09, 2012 11:44 PM|LINK
The comma after @UserId uniqueidentifier?
kylet89
Member
5 Points
16 Posts
Re: Incorrect Syntax near the key word AS why????
Aug 09, 2012 11:52 PM|LINK
I have no idea why I didn't spot that thanks