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

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

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

To Everyone
Я очень благодарна за внимание к моей проблеме
Еще раз спасибо
...
Рейтинг: 0 / 0
Как создать или изменить процедуру в N базах данных
    #32033923
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно запустить процедуру из БД и увидеть результат
ее работы, если имя БД известно в переменной.
...
Рейтинг: 0 / 0
Как создать или изменить процедуру в N базах данных
    #32033939
Фотография RatTail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как создать или изменить процедуру в N базах данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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