Commit for development environment setup
This commit is contained in:
113
PROMS/SQL/FixFor256Number.SQL
Normal file
113
PROMS/SQL/FixFor256Number.SQL
Normal file
@@ -0,0 +1,113 @@
|
||||
|
||||
/****** Object: StoredProcedure [updateContent] ******/
|
||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[updateContent]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
|
||||
DROP PROCEDURE [updateContent];
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[updateContent]
|
||||
|
||||
(
|
||||
@ContentID int,
|
||||
@Number nvarchar(256)=null,
|
||||
@Text nvarchar(MAX)=null,
|
||||
@Type int=null,
|
||||
@FormatID int=null,
|
||||
@Config nvarchar(MAX)=null,
|
||||
@DTS datetime,
|
||||
@UserID nvarchar(100),
|
||||
@LastChanged timestamp,
|
||||
@newLastChanged timestamp output
|
||||
)
|
||||
AS
|
||||
BEGIN TRY -- Try Block
|
||||
BEGIN TRANSACTION
|
||||
UPDATE [Contents]
|
||||
SET
|
||||
[Number]=@Number,
|
||||
[Text]=@Text,
|
||||
[Type]=@Type,
|
||||
[FormatID]=@FormatID,
|
||||
[Config]=@Config,
|
||||
[DTS]=@DTS,
|
||||
[UserID]=@UserID
|
||||
WHERE [ContentID]=@ContentID AND [LastChanged]=@LastChanged
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
IF NOT exists(select * from [Contents] WHERE [ContentID]=@ContentID)
|
||||
RAISERROR('Content record has been deleted by another user', 16, 1)
|
||||
ELSE
|
||||
RAISERROR('Content has been edited by another user', 16, 1)
|
||||
END
|
||||
|
||||
SELECT @newLastChanged=[LastChanged]
|
||||
FROM [Contents] WHERE [ContentID]=@ContentID
|
||||
|
||||
IF( @@TRANCOUNT > 0 ) COMMIT
|
||||
END TRY
|
||||
BEGIN CATCH -- Catch Block
|
||||
IF( @@TRANCOUNT = 1 ) ROLLBACK -- Only rollback if top level
|
||||
ELSE IF( @@TRANCOUNT > 1 ) COMMIT -- Otherwise commit. Top level will rollback
|
||||
EXEC vlnErrorHandler
|
||||
END CATCH
|
||||
GO
|
||||
-- Display the status of Proc creation
|
||||
IF (@@Error = 0) PRINT 'Procedure Creation: updateContent Succeeded'
|
||||
ELSE PRINT 'Procedure Creation: updateContent Error on Creation'
|
||||
GO
|
||||
|
||||
/****** Object: StoredProcedure [addContent] ******/
|
||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[addContent]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
|
||||
DROP PROCEDURE [addContent];
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[addContent]
|
||||
|
||||
(
|
||||
@Number nvarchar(256)=null,
|
||||
@Text nvarchar(MAX)=null,
|
||||
@Type int=null,
|
||||
@FormatID int=null,
|
||||
@Config nvarchar(MAX)=null,
|
||||
@DTS datetime,
|
||||
@UserID nvarchar(100),
|
||||
@newContentID int output,
|
||||
@newLastChanged timestamp output
|
||||
)
|
||||
AS
|
||||
BEGIN TRY -- Try Block
|
||||
BEGIN TRANSACTION
|
||||
INSERT INTO [Contents]
|
||||
(
|
||||
[Number],
|
||||
[Text],
|
||||
[Type],
|
||||
[FormatID],
|
||||
[Config],
|
||||
[DTS],
|
||||
[UserID]
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
@Number,
|
||||
@Text,
|
||||
@Type,
|
||||
@FormatID,
|
||||
@Config,
|
||||
@DTS,
|
||||
@UserID
|
||||
)
|
||||
SELECT @newContentID= SCOPE_IDENTITY()
|
||||
SELECT @newLastChanged=[LastChanged]
|
||||
FROM [Contents] WHERE [ContentID]=@newContentID
|
||||
IF( @@TRANCOUNT > 0 ) COMMIT
|
||||
END TRY
|
||||
BEGIN CATCH -- Catch Block
|
||||
IF( @@TRANCOUNT = 1 ) ROLLBACK -- Only rollback if top level
|
||||
ELSE IF( @@TRANCOUNT > 1 ) COMMIT -- Otherwise commit. Top level will rollback
|
||||
EXEC vlnErrorHandler
|
||||
END CATCH
|
||||
GO
|
||||
-- Display the status of Proc creation
|
||||
IF (@@Error = 0) PRINT 'Procedure Creation: addContent Succeeded'
|
||||
ELSE PRINT 'Procedure Creation: addContent Error on Creation'
|
||||
GO
|
Reference in New Issue
Block a user