Создание базы данных, таблиц, процедур с использованием хранимой процедуры / функции? - PullRequest
1 голос
/ 27 октября 2011

Мне нужно создать базу данных (+ схема, данные, процедуры, роли), используя процедуру / функцию - когда я вызываю ее из кода c #.


Ситуация:

У меня есть база данных masterDB, в которой пользователь может создать новую компанию. Когда он создает новую компанию, должна быть создана новая база данных (например, nike2011) (сценарий ddl: таблицы + хранимые процедуры будут где-то храниться - в процедуре / сценарии?).

Если он решит скопировать каталоги из какой-то другой базы данных (например, nike2010 или cocacola2009), данные должны быть скопированы из выбранной базы данных в базу данных nike2011.

После создания базы данных мне нужно предоставить всем пользователям сервера sql вновь созданную базу данных.


Я пытался использовать хранимую процедуру, но не могу создать хранимую процедуру внутри хранимой процедуры для создания новой базы данных, и я не могу использовать 'use nike2010' в хранимой процедуре.

Надеюсь, вы понимаете.

1 Ответ

2 голосов
/ 27 октября 2011

Вам нужно будет выполнить динамический SQL (SQL, построенный с использованием строк), используя, например, sp_executesql.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...