Хранимая процедура upDBTreeRenameNode

   Процедура устанавливает новый текст для узла.Ничто не мешает здесь организовать проверку нового
   текста на его допустимость и изменить его на другое значение.

CREATE PROCEDURE [upDBTreeRenameNode] 
   @idDBTree INT,
   @idNode INT,
   @NewText VARCHAR (255) OUT
AS
   DECLARE @Error INT
   SET @Error=0
   SET NOCOUNT ON
   BEGIN TRAN 
   IF NOT Exists(SELECT * FROM DBTree WHERE idDBTree=@idDBTree AND idNode=@idNode) BEGIN
        SET NOCOUNT OFF
        RAISERROR ('Нет заданного узла',16,1)
        RETURN 1
   END
   IF @@ERROR<>0 SET @Error=@@ERROR
   UPDATE DBTree SET [Text]=@NewText WHERE idDBTree=@idDBTree AND idNode=@idNode
   IF @@ERROR<>0 SET @Error=@@ERROR

   SET NOCOUNT OFF
   IF @Error=0 
     BEGIN
          COMMIT TRAN 
          SELECT @NewText NewText
     END 
   ELSE BEGIN
        ROLLBACK TRAN
        RETURN 1
   END



Сайт управляется системой uCoz