Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 регистрация расширенной процедуры  [new]
неопознанный
Guest
пытаюсь зарегистрировать Quaery Analyzer-ом на своей базюке PMRecord
расширенную хранимую процедуру

USE PMRecord
EXECUTE SP_ADDEXTENDEDPROC 'xp_hello', 'xp_hello.dll'


а она мне отвечает:

ODBC: Msg 0, Level 16, State 1
sp_addextendedproc can only be executed in the master database.


Не подскажите в чем здесь дело ... плиз ...
(хотя на БД master удалось зарегистрировать, и все работает)
22 апр 05, 14:19    [1489775]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
savosin_sergey
Member

Откуда: Москва
Сообщений: 451
может выполнить use master?
22 апр 05, 14:21    [1489792]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
неопознанный
Guest
Как я понял при use master
хранимая процедура регистрируется в бд master,
а мне нужно что бы она зарегистрировалась в моей базе данных.

к моей бд будет осуществляться connect, и с ней будет происходить работа.

хотя наверно возможно из хранимой процедуры одной БД,
вызвать процедуру хранящуюся в другой БД,
хотя я не знаю пока как,
если подскажите ... я буду признателен.
22 апр 05, 14:34    [1489887]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
неопознанный
пытаюсь зарегистрировать Quaery Analyzer-ом на своей базюке PMRecord расширенную хранимую процедуру
...
хотя на БД master удалось зарегистрировать, и все работает

Естественно. Расширенные хранимые процедуры могут быть зарегистрированы только в master'е. А вот вызываться могут из любой базы.
22 апр 05, 14:34    [1489892]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
неопознанный
мне нужно что бы она зарегистрировалась в моей базе данных.

Не нужно. Так нельзя.

неопознанный
хотя наверно возможно из хранимой процедуры одной БД,
вызвать процедуру хранящуюся в другой БД

exec dbname.owner.procname
22 апр 05, 14:36    [1489902]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
неопознанный
Guest
она мне теперь возвращает:

Server: Msg 2812, Level 16, State 62, Line 6Could not find stored procedure 'master.owner.xp_hello'.

(1 row(s) affected)


Моя хранимая процедура:
CREATE PROCEDURE WERT
AS

declare @txt varchar(33)
exec master.owner.xp_hello @txt OUTPUT

select @txt AS OUTPUT_Parameter
GO
22 апр 05, 14:59    [1490041]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
owner - это не волшебное слово типа сим-сим. Это реально существующий владелец процедуры.

Если вам это слово ни о чем не говорит, то
exec dbname.dbo.procname
dbo можно выкинуть и писать просто
exec dbname..procname
22 апр 05, 15:08    [1490098]     Ответить | Цитировать Сообщить модератору
 Re: регистрация расширенной процедуры  [new]
неопознанный
Guest
спасибо большое,
заработало
22 апр 05, 15:17    [1490132]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить