zoukankan      html  css  js  c++  java
  • 附加目录中所有的数据库文件

    DECLARE @databasedir varchar(200)
    SET @databasedir = 'F:\SQLServer\Data\'

    /* 目录结构 */
    DECLARE @t table(id int identity(1,1),subdirectory nvarchar(255),depth int,i int)

    INSERT INTO @t(subdirectory,depth,i)
    EXEC master..xp_dirtree @databasedir,0,1

    DELETE FROM @t WHERE subdirectory NOT LIKE '%.mdf'
    DECLARE @filename nvarchar(255),@dbname nvarchar(255),@filename1 nvarchar(255),@subdirectory nvarchar(255)
    DECLARE @cmd nvarchar(4000)
    create table #smoPrimaryFileProp(property sql_variant NULL, value sql_variant NULL

    WHILE (SELECT COUNT(*FROM @t> 0
    BEGIN
        
    SELECT TOP 1 @subdirectory = subdirectory FROM @t
        
    SELECT @fileName = @databasedir+@subdirectory;
    BEGIN TRY
        
    SET @cmd = 'dbcc checkprimaryfile (N'''+ @fileName + ''' , 2)'

        
    TRUNCATE TABLE #smoPrimaryFileProp
        
    insert #smoPrimaryFileProp exec (@cmd)

        
    SELECT @dbname = CAST([value] AS nvarchar(255)) 
        
    FROM #smoPrimaryFileProp WHERE [property] = 'Database name'
        
        
    SELECT @filename1 = REPLACE(@fileName,'.mdf','_log.LDF');

        
        
    EXEC sp_attach_db 
        
    @dbname,
        
    @fileName,@filename1
        
    END TRY
    BEGIN CATCH
    END CATCH


        
    DELETE FROM @t WHERE subdirectory = @subdirectory
    END

    DROP TABLE #smoPrimaryFileProp
  • 相关阅读:
    __del__ 析构方法 __init__ 构造方法
    单态模式
    面向对象小练习2
    __new__ '''魔术方法
    菱形继承
    继承:多继承
    继承: .单继承
    面向对象小练习
    __init__ 魔术方法
    如何访问私有成员
  • 原文地址:https://www.cnblogs.com/goodspeed/p/1160221.html
Copyright © 2011-2022 走看看