Я использую динамический SQL, чтобы создать базу данных в таблицы"USE [DB]" Динамический SQL не работал
это SQL скрипт
DECLARE @DatabaseName VARCHAR(50) = N'test';
EXECUTE ('CREATE DATABASE [' [email protected]+']');
EXECUTE('USE ' + @DatabaseName)
GO
CREATE SCHEMA [Framework]
GO
ошибка я получаю
Msg 2714, Level 16, State 6, Line 1
There is already an object named 'Framework' in the database.
Msg 2759, Level 16, State 0, Line 1
CREATE SCHEMA failed due to previous errors
.
эта ошибка, потому что EXECUTE ('USE' + @DatabaseName) не работает
Я пытаюсь использовать
SET @SQL02 = 'USE ['+ convert(nvarchar(50),@DatabaseName) +']; SELECT DB_NAME();'
exec sp_executesql @SQL02
но не работает
что я могу сделать?
Пометьте используемые вами dbms. (Возможно, SQL-Server?) – jarlh
Я использовал SQL-версию 2012 – Jala
Выполняет запуск в своем собственном экземпляре. У вас должны быть все действия в той же команде EXECUTE для правильной работы 'USE''. –
Jens