Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

mssql2000 и select из ХП   Найти похожие ветки 

 
Анна   (2010-04-14 15:59) [0]

select * from dbo.sp_help ves

Как сделать селект из хранимой процедуры?


 
12 ©   (2010-04-14 16:00) [1]

openquery?


 
Анна   (2010-04-14 16:26) [2]


> 12 ©   (14.04.10 16:00) [1]
> openquery?

А что писать первым параметром (linked server)? У меня его нет...
SELECT *
FROM OPENQUERY( ..master,"SELECT * FROM dbo.sp_help ves")


 
han_malign   (2010-04-14 16:44) [3]

user_defined_function

Specifies a user-defined function that returns a table. If the user-defined function is a built-in user-defined function, it must be preceded by two colons, as in

FROM ::fn_listextendedproperty



 
12 ©   (2010-04-14 16:57) [4]

> что писать первым параметром
сам себя

кстати, да
функция и return table


 
Анна   (2010-04-14 17:13) [5]


> han_malign   (14.04.10 16:44) [3]


> функция и return table

Спасибо!!!!


 
han_malign   (2010-04-15 09:16) [6]


> функция и return table

- а вот и хрен: sp_... - ни разу не функция... простой FROM не прокатит... :(
Только OPENQUERY и INSERT-EXEC во временную таблицу...

> А что писать первым параметром (linked server)? У меня его нет...

sp_addlinkedserver @server = "LOCALSERVER",  @srvproduct = "",
                  @provider = "SQLOLEDB", @datasrc = @@servername
SELECT * FROM OPENQUERY(LOCALSERVER, "EXEC ...")

http://www.sommarskog.se/share_data.html


 
Анна   (2010-04-15 11:08) [7]


> han_malign   (15.04.10 09:16) [6]

Сделала:
EXEC sp_addlinkedserver "qqqq","","SQLOLEDB",@@servername
SELECT * FROM OPENQUERY(qqqq, "EXEC vniro..fish_res_proc") where id_res=83
где fish_res_proc" - моя процедура. Все работает.

Но! Когда перехожу к sp_help, то не получается как указать БД к таблице:
SELECT * FROM OPENQUERY(qqqq, "EXEC sp_help doc_marker ")
При таком написании ругается, что в master-е нет табл.doc_marker...
если пишу:  
SELECT * FROM OPENQUERY(qqqq, "EXEC sp_help vniro..doc_marker ")
То инкоррект синтакс...


 
12 ©   (2010-04-15 11:34) [8]

а если сделать процедуру, из которой вызывать EXEC sp_help doc_marker ?


 
han_malign   (2010-04-15 11:45) [9]

поробуй "USE vniro EXEC sp_help doc_marker", или "EXEC sp_help ""vniro..doc_marker"""


 
Анна   (2010-04-15 12:25) [10]


> поробуй "USE vniro EXEC sp_help doc_marker", или "EXEC sp_help
> ""vniro..doc_marker"""

Не... Не проходит.


> а если сделать процедуру, из которой вызывать EXEC sp_help
> doc_marker ?

Здесь тоже попробвала. Процедуру написала. Когда вызываю то работает, наборы данных выдает :
exec vniro..proc_sp_help ( в процедуре только один вызов : exec sp_help doc_marker)
Но когда ставлю в :
SELECT * FROM OPENQUERY(qqqq,"EXEC vniro..proc_sp_help"),
то ругается:
OLE DB provider "SQLOLEDB" supplied inconsistent metadata for a column. The name was changed at execution time.


 
han_malign   (2010-04-15 12:53) [11]

а зачем вообще этот изврат нужен, не проще в ручную по системным таблицам пробежаться? sp_help вообще то ни разу не гомогенный набор возвращает, там несколько наборов с разными полями, поэтому в select оно никак не запихнется...

Что-то мне подсказывает(телепатирую), что тебе syscolumns, или COLUMNPROPERTY(OBJECT_ID(doc_marker), COL_NAME(OBJECT_ID(doc_marker), n), prop) нужны...


 
Анна   (2010-04-15 13:03) [12]


> han_malign   (15.04.10 12:53) [11]

Да я сама понимаю, что изврат... Просто зациклилась. То что несколько наборов возвращает, знаю, в дельфи их считываю, раскладываю в переменные и использую для create table.
Спасибо за участие. Да и вообще... :))  Спасибо!!!


 
han_malign   (2010-04-15 13:14) [13]


> несколько наборов возвращает, знаю

- дык, а чего ж тогда удивительного, что:
>... inconsistent metadata for a column. The name was changed at execution time.
- значит запрос таки прошел, вот только результат в rowset не влазит...
Можно расцикливаться... :)


 
Ega23 ©   (2010-04-15 13:31) [14]

А какая проблема стоит-то?



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.05 c
15-1269409783
TUser
2010-03-24 08:49
2010.08.27
Школа vs гугл :)


15-1263853581
Германн
2010-01-19 01:26
2010.08.27
Потоконебезопасность VCL


2-1275097955
DROWSY
2010-05-29 05:52
2010.08.27
"Логический" тип данных Firebird 1.5 в компонентах.


15-1273217287
Тайлер Дерден
2010-05-07 11:28
2010.08.27
"кинопоиск" для книг


15-1269450049
Zver
2010-03-24 20:00
2010.08.27
Дискреционная политика безопасности.