Хранимая процедура Microsoft SQL

#sql #sql-server

#sql #sql-сервер

Вопрос:

Я новичок в sql. Я хотел бы спросить, что мне следует делать, когда я буду создавать базу данных с использованием хранимой процедуры. Обычно я делаю это для создания базы данных: create databse db_mydatabase будет создано имя базы данных db_mydatabse. Вопрос: как я смогу создать базу данных с помощью хранимой процедуры?

Комментарии:

1. какую СУБД вы использовали

2. Почему вы хотите создать базу данных из хранимой процедуры?

3. спасибо за ваш комментарий, сладкоежка. мне просто интересно, возможно ли создать базу данных с использованием хранимой процедуры. Я использую SQL 2017, поскольку, насколько я понимаю, мне нужно ввести этот код create database db_mydatabase, и он создаст базу данных db_mydatabase для меня. Сценарий таков, что если я захочу автоматизировать создание базы данных с помощью хранимой процедуры, то если я захочу создать новую базу данных, я просто выполню Хранимую процедуру и предоставлю имя базы данных, и будет создана новая база данных.

Ответ №1:

Используйте это

 create procedure sp_create_db @name nvarchar(500)
as 
begin 
declare @sql nvarchar(max);
set @sql='CREATE DATABASE ' @name;
EXECUTE(@sql)
end
  

Комментарии:

1. эхсан Киани благодарит за помощь, с которой я смог это сделать. Только один вопрос — это поведение по умолчанию, когда хранимая процедура, созданная не внутри обычной базы данных, переходит в основную базу данных в соответствии с программируемой хранимой процедурой? это то, что я наблюдаю, я новичок в database. большое спасибо.

2. У каждого пользователя в SQL Server есть база данных по умолчанию, когда вы можете изменить базу данных, с которой хотите работать в данный момент, но если вы не измените ее, она должна быть главной. Если вам нужна дополнительная информация, я предлагаю вам задать другой вопрос, и, пожалуйста, отметьте этот ответ как правильный, если он полезен, спасибо.

3. большое вам спасибо, эхсан Киани, за ваше объяснение.