zoukankan      html  css  js  c++  java
  • 使用 SP_OAXXX 创建文件夹,注意区别于 xp_cmdshell --mkdir xxx

    sp_configure 'show advanced options',1
    go 
    reconfigure with override
    go
    sp_configure 'Ole Automation Procedures',1
    go
    reconfigure  with override
    go
    ALTER PROC dbo.usp_OACreate  @folderName VARCHAR(256)='C:Test	estfa'
    AS
    BEGIN 
    	DECLARE @hr INT,@fso_token INT,@dirHandle INT,@IsDir_flag BIT,@IsParDirExists_Flag BIT
    	DECLARE @tempTab TABLE(fileexists_flag BIT,IsDir_flag BIT,IsParDirExists_Flag BIT)
    	INSERT INTO @tempTab
    	EXEC xp_fileexist @folderName  --,@hr output
    	SELECT @IsDir_flag=IsDir_flag,@IsParDirExists_Flag=IsParDirExists_Flag FROM @tempTab
    	IF @IsDir_flag<>1 AND @IsParDirExists_Flag=1
    		BEGIN
    		     EXEC @hr=SP_OACREATE 'Scripting.FileSystemObject',@fso_token OUTPUT
    			  IF @hr<>0
    				BEGIN
    					GOTO errorProcess
    				END
    				ELSE
    					BEGIN
    						EXEC @hr=SP_OAMethod @fso_token,'CreateFolder',@dirHandle OUTPUT,@folderName
    					    
    					    IF @hr<>0 GOTO errorProcess
    						ELSE 
    						 EXEC SP_OADestroy @fso_token
    					END
    		END
    	ELSE
    	GOTO fileexists
    	errorProcess:
    	EXEC SP_OAGetErrorInfo @fso_token
    	RETURN 1; --- FAILED
    	fileexists:
    	RAISERROR('Folder %s exists OR its parent directory path is not exist!!! please check!!!',-1,-1,@folderName) WITH NOWAIT
    END
    GO
    

      

    如果有来生,一个人去远行,看不同的风景,感受生命的活力。。。
  • 相关阅读:
    sqlserver表结构导出excel格式
    c#对象深复制demo
    aspose.cells导出Demo
    复制表结构数据至另一数据库
    C#安全类型转换基于convert
    c# winform devexpress TreeList过滤和绑定
    万能分页存储过程
    WebSocket简单使用
    本地搭建持续集成(AzureDevops)
    centos 7 安装nginx并启动(笔记)
  • 原文地址:https://www.cnblogs.com/Frank99/p/6373573.html
Copyright © 2011-2022 走看看