Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Delphi не реагирует на RAISERROR [D6, MSSQL]


testthewest ©   (2003-08-20 12:45:00) 

Вот процедурка для перемещения в дереве ветки на другую ветку. Почему-то Дельфя упорно не реагирует на последний RAISERROR. Причем на RAISERROR-test-1 - реагирует, a на RAISERROR-test-2 - НЕ реагирует. При запуске процедуры из Query Analyzer или Enterprize Manager все RAISERROR отрабытаваются правильно.
В чем может быть дело?


mssql2000

CREATE PROCEDURE dbo.SMK_MOVETREENODE @ItemID int, @ItemParentID int, @NewItemParentID int
AS

DECLARE @rc int, @er int
BEGIN TRAN
--RAISERROR ("TEST-1",16,1)
UPDATE SMK_TREELINKS
SET TR_ParentID=@NewItemParentID
WHERE (TR_ParentID=@ItemParentID) AND (TR_ChildID=@ItemID)
SET @rc= @@ROWCOUNT

DECLARE @s varchar(500)
SET @s=dbo.GetNodeAllSubChilds(@ItemID)
SET @er=CHARINDEX("Error",@s)
SET @s="ОШИБКА в SMK_MOVETREENODE: "

IF @rc<>1 SET @s=@s+" Обновлено строк<>1 "
IF @er<>0 SET @s=@s+" NestLevel>30 "

--RAISERROR ("TEST-2",16,1)

IF (@rc<>1) or (@er<>0)
BEGIN
ROLLBACK TRAN
RAISERROR(@s,16,1)
RETURN
END
COMMIT TRAN
GO


testthewest   (2003-08-20 14:51:00) [1]

http://www.sql.ru/forum/actualthread.aspx?bid=1&tid=45140


Наверх

Титульная страница Поиск, карта сайта Написать письмо