Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
cheska
Member

Откуда:
Сообщений: 49
Хранимая процедура должна снаячала удалить из таблицы все старые данные (кол-во строк может быть любым) и затем вставить новые.

ALTER PROCEDURE [dbo].[testFT] 
	-- Add the parameters for the stored procedure here
	@iScriptCode varchar(12)
AS
BEGIN
  -- SET NOCOUNT ON added to prevent extra result sets from
  -- interfering with SELECT statements.
  SET NOCOUNT ON;

 delete from wd_foto
 where ScriptCode = @iScriptCode

 insert into wd_foto 
 ( id,ScriptCode,iDate,iTime,SignalName,GroupNumber,sysTime )

 select  id,ScriptCode,iDate,iTime,SignalName,GroupNumber, GETDATE()
 from wld_signal
 where ScriptCode = @iScriptCode 

END
GO

SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO

В общем по отдельности, Delete или Insert - работают, а вместе ноль. Как будто ничего не происходит. ПОЧЕМУ ?
28 сен 09, 14:16    [7715430]     Ответить | Цитировать Сообщить модератору
 Re: Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
и без ошибок ? и Триггера на делит нет на таблице ?
-------------------------------------
Jedem Das Seine
28 сен 09, 14:18    [7715442]     Ответить | Цитировать Сообщить модератору
 Re: Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
PaulYoung
Member

Откуда: Москва
Сообщений: 2549
cheska,

тестируете на одних и тех же данных? Значение параметра ХП соответствует "правильному" тесту?
28 сен 09, 14:20    [7715449]     Ответить | Цитировать Сообщить модератору
 Re: Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
Ох...ий программизд
Guest
Может быть сначала из таблицы wd_foto удаляются записи, где ScriptCode = @iScriptCode, а потом в нее же вставляются записи, где ScriptCode опять-таки равен @iScriptCode, в результате чего вы не различаете удаленные и вставленные записи?
Другими словами, вы точно уверены, что ничего не происходит? Как вы это узнали?
28 сен 09, 14:23    [7715466]     Ответить | Цитировать Сообщить модератору
 Re: Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
cheska
Member

Откуда:
Сообщений: 49
после отработки процедуры смотрю результат в таблице wd_foto.
При этом если были записи они пропадают, т.е. delete отрабатывается, но вставка новых не происходит.
Хотя эти новые строки есть и если заблокировать операторы delete оставив остальное, тогда новые записи появяться
28 сен 09, 14:35    [7715543]     Ответить | Цитировать Сообщить модератору
 Re: Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
Ох...ий программизд
Guest
cheska
При этом если были записи они пропадают, т.е. delete отрабатывается, но вставка новых не происходит.

Ну вот видите - потихоньку начинаете рассказывать как оно на самом деле происходит. Ранее вы писали:
cheska
В общем по отдельности, Delete или Insert - работают, а вместе ноль. Как будто ничего не происходит.

Из вас все клещами вытягивать надо? Давайте таблицы и тестовые данные.
28 сен 09, 14:43    [7715600]     Ответить | Цитировать Сообщить модератору
 Re: Объединение Delete и Insert в Хранимой процедуре. Не работает !  [new]
cheska
Member

Откуда:
Сообщений: 49
Я сильно извиняюсь, но проблема была в том что еще висел на таблице "кривой" триггер который вносил свою лепту и блокировал корректное исполнение.
Убрал триггер и все заработало.
28 сен 09, 15:43    [7716127]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить