SQL Server. Возвращение значения из хранимой процедуры.
От: ivan__22  
Дата: 27.11.02 07:34
Оценка:
Здраствуйте!!!
Есть такая хранимая процедура.
CREATE PROCEDURE sp_GetUnikalKod
@Znachenie varchar(512),
@Kod bigint=0
AS
select kod from Unikal_kod where firma=@Znachenie
update Unikal_kod set kod=kod+1 where firma=@Znachenie
GO
Вот с такой реализацией вначале возвращаеться Код потом делаеться Update. А если поменять местами операторы select и update. То хранимая процедура не возвращает значение вообще, хотя смысл процедуры не меняеться.
update Unikal_kod set kod=kod+1 where firma=@Znachenie
select kod from Unikal_kod where firma=@Znachenie
Вызываем мы эту процедуру из VB6.0 таким образом
set rs = db.Execute("exec sp_GetUnikalKod 'sprav'")
В первом случае rs(0) = Значение кода
Во втором случае rs(0) — Вызывает ошибку "ОПЕРАЦИЯ ЗАПРЕЩЕНА ТАК КАК ОБЬЕКТ ЗАКРЫТ"
Вопрос: Почему во втором случае обьект рекордсет закрываеться?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.