Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / как заполнить Recordset хранимой процедурой? / 2 сообщений из 2, страница 1 из 1
30.08.2005, 18:41
    #33242028
AlexeyKo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как заполнить Recordset хранимой процедурой?
Помогите!
Не получается получить набор данных из хр.проц. Делаю как показано ниже.
Заметил, что если хп состоит из одного select'a, то все работает, но вот если в тело хп, к примеру, добавить временную таблицу и вставить select * into #temptable from ... , то программа закрывает recordset сразу после вызова cmd.Execute, а обращение к oRecordset.EOF дает ошибку: "Операция не допускается, если объект закрыт"
При этом из QA все выглядит замечательно...

Dim conn As New ADODB.Connection
Dim cmd As ADODB.Command
Dim oRecordset As ADODB.Recordset

conn.ConnectionString = "Provider=SQLOLEDB;Server=(local);Initial Catalog=SBODemo_RU76;Trusted_Connection=Yes"
conn.CursorLocation = adUseClient
conn.Open

Set cmd = New ADODB.Command
cmd.Prepared = False
cmd.ActiveConnection = conn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "Test"
cmd.Parameters.Item("@WCode").Value = strWarehouse
cmd.Parameters.Item("@CCode").Value = "C1000"
cmd.Parameters.Item("@Year").Value = "2005"
Set oRecordset = cmd.Execute
i = 1
While Not oRecordset.EOF
sht.Cells(1, i) = oRecordset.Fields(0).Value
i = i + 1
oRecordset.MoveNext
Wend
Set oRecordset = Nothing
Set cmd = Nothing
conn.Close
Set conn = Nothing


при такой хп все ОК:
CREATE PROCEDURE [dbo].[Test] AS
Select Code, Name From [dbo].[@One_MainWh]
GO

при такой хп все очень плохо :(
CREATE PROCEDURE [dbo].[Test] AS
Select * into #t From [dbo].[@One_MainWh]
Select Code, Name From [dbo].[@One_MainWh]
drop table #t
GO
...
Рейтинг: 0 / 0
31.08.2005, 06:50
    #33242386
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как заполнить Recordset хранимой процедурой?
AlexeyKo
Помогите!

Это форум по ADO .NET

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / как заполнить Recordset хранимой процедурой? / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]