Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как создать или изменить процедуру в N базах данных / 8 сообщений из 8, страница 1 из 1
25.06.2002, 01:01:14
    #32033710
Natashka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
У меня несколько странная ситуация: очень много однотипных баз данных в которые надо достаточно часто вносить одинаковые изменения. Может у кого-нибудь есть едеи как можно создать новую или изменить уже существующую хранимую процедуру задавая имя базы данных в переменной. Для других изменений я использую курсор по именам баз, генерирую строку типа 'USE USERDB_Name '+'[All my changes I need to be done]' и выполняю. С процедурами это не проходит. Ошибка: 'ALTER PROCEDURE' must be the first statement in a query batch
Может быть это вообще невозможно сделать?
Заранее очень благодарна за ответ
...
Рейтинг: 0 / 0
25.06.2002, 01:13:57
    #32033712
Слон
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
Горю Вашему очень легко помочь. Достаточно после 'USE USERDB_Name ' и перед '[All my changes I need to be done]' поставить волшебное слово + ' GO ' + . И... Что-то произойдет :)

-- Слон
...
Рейтинг: 0 / 0
25.06.2002, 01:22:46
    #32033714
Natashka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
Все было бы действительно просто если бы 'GO' можно было бы выполнить в строке. Но при выполнении возникает ошибка : Incorrect syntax near 'GO'
:(((
...
Рейтинг: 0 / 0
25.06.2002, 04:44:15
    #32033718
gena
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
А почему бы не хранить эту процедуру только в одной БД и не ссылаться на нее из остальных по полному имени?
...
Рейтинг: 0 / 0
25.06.2002, 15:39:06
    #32033825
Denis.R.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
exec xp_execresultset
N'select ''alter procedure dbo.example as select 1''',N'TestDb'
...
Рейтинг: 0 / 0
25.06.2002, 19:52:13
    #32033872
Natashka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
To Denis.R.

Спасибо огромное!!!
Вы меня спасли :))
Если не секрет, где можно найти описание на xp_execresultset. Что-то я нигде не нахожу

To Everyone
Я очень благодарна за внимание к моей проблеме
Еще раз спасибо
...
Рейтинг: 0 / 0
26.06.2002, 10:18:26
    #32033923
snake
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
А можно запустить процедуру из БД и увидеть результат
ее работы, если имя БД известно в переменной.
...
Рейтинг: 0 / 0
26.06.2002, 11:54:58
    #32033939
RatTail
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать или изменить процедуру в N базах данных
declare @i varchar(25), @j varchar(255)
set @i='pubs'
set @j='d:\mssql7\binn\isql -Usa -P -d ' + @i + ' -i d:\Procedures\NewProc.txt'
exec ('master..xp_cmdshell ' + "'" + @j + "'")
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как создать или изменить процедуру в N базах данных / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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