powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / процедуры как таблицы
21 сообщений из 21, страница 1 из 1
процедуры как таблицы
    #32072298
ao1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья!
Я с Интербейса перешел на SQL server

В Интербейсе можно сделать так:

CREATE PROCEDURE BLA_BLA
AS
.........

потом в другой процедуре или вообще в ЭСкуеле

SELCET A.*,B.* FROM BLA_BLA A,MYTABLE B
WHERE.......

ТО ЕСТЬ процедурой пользуюсь как таблицой

теперь в SQL server

EXEC sp_lock
получаю рекордсет ,но
если хочу получить внятное ObjId поле посредством


SELECT object_name(ObjId),sp_lock.Mode и т.д.
то не как не выходит.

подсоединить кусор к процедуре тоже ни как ни получается ,но ведь рекордсет процедура возвращает
как его забрать ?


P.S. такое может понадоиться довольно часто
sp_lock это только для примера
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072299
ms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ms
Гость
Если цепляешься к SQL TStoredProcedur , то делай OPEN и получишь RecordSet,
ну а если просто из SQL, то наверное только через временные таблицы
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072302
Фотография AVL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо вставить данные, получнные из ХП во временную таблицу. Дальше работать уже с этим набором данных
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072353
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предлагаю всем такие топики называть так:
"Я с Интербейса перешел на SQL server ..."
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072564
ao1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
надо вставить данные, получнные из ХП во временную таблицу.
КАК?
если уж можно объясните

"Я с Интербейса перешел на SQL server"
Я тут видел и более глупые вопросы ,
так что не надо издеватся
Все когда-нибудь начинали!
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072566
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
create table #tmp (
spid int,
dbid int, 
ObjId int, 
indId int, 
type char( 10 ), 
resorce char( 20 ), 
mode char( 10 ), 
status char( 10 ) 
)
insert #tmp  exec sp_lock
select * from #tmp   
drop table #tmp 
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072567
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
insert into <table name> exec proc_name
Но помните, что такая конструкция не может быть вложенной, поэтому

Вместо процедур возвращающих recordset'ы используйту UDF ( User Defined Functions )
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072572
Фотография Белов Владимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
insert into ... exec sp_lock

как раз такая фигня пройдет, т.к. если посмотреть текст sp_lock, то мы не увидим там не одного insert.
Короче избегай вложенных insert
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072573
ao1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
Буду капать в этом направлении
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072576
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То ao1973
создайте на основе текста sp_lock UDF...
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072577
AAron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в дополнение, если процедура возращает несколько рекордсетов, тоже могут быть проблемы.
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072578
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2snake: шутка, наверное, такая ? :)
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072579
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вовсе нет, funikov yuri...
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072583
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2snake: а потом наверное и все остальные системные процедуры ?
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072584
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если требует задача - да!
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072587
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2snake: есть недостатки
- непереносимость, даже в пределах одной версии - от ServicePack к ServicePack
- функции имеют больше ограничений - т.е. не всякая процедура может стать функцией
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072590
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
согласен...
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072671
TurPOKPbIC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еще копни в сторону OPENROWSET.
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072690
ao1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все немного в сторону свернули
Суть не в системных процедурах,
предположим у меня есть процедура [прибыль],
которая делает что-то полезное ,положим считает товарооборот ,затем я пишу
процедуру [фин_баланс],которая испульзует
данные [прибыль]-и .
Суть в том как мне из [фин_баланс]-а вызывать рекордсет
[прибыль]-и.
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072691
Fedot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А может SELECT (...) FROM OPENQUERY(ServerName, 'BLA_BLA') поможет?
...
Рейтинг: 0 / 0
процедуры как таблицы
    #32072694
ao1973
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо,ребята
хороший форум очень помогли.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / процедуры как таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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