sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server:Ändra aktuell databas via variabel

Kör USE some_db i dynamisk SQL fungerar men tyvärr när omfattningen lämnas ändras databaskontexten tillbaka till vad den var ursprungligen.

Du kan använda sqlcmd läge för detta (aktivera detta på menyn "Fråga" i Management Studio).

:setvar dbname "MyNewDatabaseName" 

IF DB_ID('$(dbname)') IS NULL
    BEGIN

    DECLARE @SqlQuery NVARCHAR(1000);
    SET @SqlQuery = N'CREATE DATABASE ' + QUOTENAME('$(dbname)') + ' 
            COLLATE SQL_Latin1_General_CP1_CI_AS'
    EXEC(@SqlQuery) 

    END

GO

USE $(dbname)

GO


  1. Släpp partitioner äldre än 2 månader

  2. MYSQL - Hur man kringgår gränsen för radstorlek på 66 KByte

  3. Oracle SQL :sorteringsrad med avgränsad sträng

  4. Spela 2.4 - Slick 3.0.0 - DELETE fungerar inte