Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Возвратить @@identity из хп / 10 сообщений из 10, страница 1 из 1
27.11.2003, 12:59
    #32336618
D.Yesieff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
есть хп на mssql с insert into + вых параметр назовем Insert_into1
нужно возвратить параметр @@identity из VB
делаю так:
dim rs as new recordset
set rs = db.execute ("declare @r int exec insert_into1 ('pole2','pole3',@r output select @r")
хп однозначно выполняется, новые записи добавляются
но дальше код VB не выполняется
хп тестировалась в Query Analyzer там параметр возвращается
- че нехватает ваську?
...
Рейтинг: 0 / 0
27.11.2003, 13:19
    #32336651
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
А если так написать?

set rs = db.execute (" SET NOCOUNT ON declare @r int exec insert_into1 ('pole2','pole3',@r output select @r")
...
Рейтинг: 0 / 0
27.11.2003, 13:22
    #32336656
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
а почему не через команду с параметром ? там то проблем нет
...
Рейтинг: 0 / 0
27.11.2003, 13:34
    #32336675
D.Yesieff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
to tpg - тоже самое

to кузя - как?
...
Рейтинг: 0 / 0
27.11.2003, 14:22
    #32336747
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
Покажи текст insert_into1.
...
Рейтинг: 0 / 0
27.11.2003, 14:24
    #32336752
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
Кстати, здесь, по-моему, не хватает одной закрывающей скобки, а именно перед select.
...
Рейтинг: 0 / 0
27.11.2003, 14:49
    #32336804
D.Yesieff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
to tpg - писал попамяти поетому что-то мог упустить но суть не меняется
to кузя - хп большая - сократил поля

CREATE PROCEDURE [insert_into1]
(@K_4 [int],
@K_co_5 [int],
@K_oda_6 [int],
@r [int] output)

AS INSERT INTO [db1].[dbo].[Main]
[K],
[K_co],
[K_oda])

VALUES
(@K_4,
@K_co_5,
@K_oda_6)
set @r = @@identity
return @r
GO
...
Рейтинг: 0 / 0
27.11.2003, 22:20
    #32337245
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
У васька с возвратом проблемы кАнкретные, была у меня такая бодяга, уже не помню.
Попробуй через Command.
Т.е. все лепишь к ней, в ней же создаешь выходной параметр с тем же именем, ее лепишь к рекордсету и наслаждаешься новым ID :)

Magnus
...
Рейтинг: 0 / 0
28.11.2003, 07:31
    #32337347
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
А перепиши ка её так

CREATE PROCEDURE [insert_into1]
(@K_4 [int],
@K_co_5 [int],
@K_oda_6 [int],
@r [int] output)

AS
SET NOCOUNT ON
INSERT INTO [db1].[dbo].[Main]
[K],
[K_co],
[K_oda])

VALUES
(@K_4,
@K_co_5,
@K_oda_6)
select SCOPE_IDENTITY() --если MSSQL2000

Вызо, соответственно надо бы переписать так

set rs = db.execute (insert_into1 "'pole2'", "'pole3'"...)
...
Рейтинг: 0 / 0
28.11.2003, 07:37
    #32337351
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возвратить @@identity из хп
Даже так (очепятался немного)

CREATE PROCEDURE [insert_into1]
(@K_4 [int],
@K_co_5 [int],
@K_oda_6 [int])
AS
SET NOCOUNT ON
INSERT INTO [db1].[dbo].[Main]
[K],
[K_co],
[K_oda])
VALUES
(@K_4,
@K_co_5,
@K_oda_6)
select SCOPE_IDENTITY() --если MSSQL2000

Вызов, соответственно надо бы переписать так

set rs = db.execute ("insert_into1 K_4, K_5, K_6")

вместо K_4, K_5, K_6 необходимо подставить строковые представления вставляемых величин.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Возвратить @@identity из хп / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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