#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. большое вам спасибо, эхсан Киани, за ваше объяснение.