How can I find out the location of my (localdb) SQL Server 2012 database and back it up?

前端 未结 7 1230
旧巷少年郎
旧巷少年郎 2021-02-01 15:09

I am using VS2012 and I have a database created:

(localdb)\\v11.0 (SQL Server 11.0.2100 - T61\\Alan)

How can I find out the physical location o

7条回答
  •  青春惊慌失措
    2021-02-01 15:44

    Try this one -

    DECLARE 
          @SQL NVARCHAR(1000)
        , @DB_NAME NVARCHAR(100) = 'AdventureWorks2008R2'
    
    SELECT TOP 1 @SQL = '
        BACKUP DATABASE [' + @DB_NAME + '] 
        TO DISK = ''' + REPLACE(mf.physical_name, '.mdf', '.bak') + ''''
    FROM sys.master_files mf
    WHERE mf.[type] = 0
        AND mf.database_id = DB_ID(@DB_NAME)
    
    PRINT @SQL
    EXEC sys.sp_executesql @SQL
    

    Output -

    BACKUP DATABASE [AdventureWorks2008R2] 
    TO DISK = 'D:\DATABASE\SQL2012\AdventureWorks2008R2.bak'
    

提交回复
热议问题