September 3, 2010 at 1:00 pm
Hey folks, wondering if there was a better / shorter way to do this.
ALTER PROCEDURE [dbo].[Catalog_AddCategory]
@SiteIDINT,
@CategoryNameVARCHAR(50),
@CategoryDescriptionVARCHAR(MAX),
@CategoryParentIDINT,
@ImageIDINT,
@MessageVARCHAR(50) OUT
AS
IF @CategoryParentID IS NULL
BEGIN
IF NOT EXISTS(SELECT CategoryID FROM Categories WHERE SiteID = @SiteID AND CategoryName=@CategoryName AND CategoryParentID IS NULL)
BEGIN
INSERT INTO Categories(SiteID,CategoryName,CategoryDescription,CategoryParentID,ImageID)
VALUES(@SiteID,@CategoryName,@CategoryDescription,@CategoryParentID,@ImageID)
SET @Message = @CategoryName + ' Has been added'
END
ELSE
BEGIN
SET @Message = @CategoryName + ' Already exists'
END
END
ELSE
BEGIN
IF NOT EXISTS(SELECT CategoryID FROM Categories WHERE SiteID = @SiteID AND CategoryName=@CategoryName AND CategoryParentID = @CategoryParentID)
BEGIN
INSERT INTO Categories(SiteID,CategoryName,CategoryDescription,CategoryParentID,ImageID)
VALUES(@SiteID,@CategoryName,@CategoryDescription,@CategoryParentID,@ImageID)
SET @Message = @CategoryName + ' Has been added'
END
ELSE
BEGIN
SET @Message = @CategoryName + ' Already Exists '
END
END
September 6, 2010 at 6:25 am
Hey, thanks.
This looks much cleaner. I am a little rusty with my SQL and totally forgot about the "OR".
Viewing 2 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic. Login to reply