0

我在循环中有一个 DtUTIL 命令,它正在创建一个文件夹并部署它,但我得到 CreateFolderOnSQLServer 方法遇到 OLE DB 错误代码 0x80040E2F(该语句已终止。)发出的 SQL 语句失败。Error.Code如下

FOR /f "delims=" %%i IN ( 'dir /s /b /a-d "%relroot%\*.dtsx" ') DO (
FOR /f "delims=" %%m IN ("%%~dpi.") DO (
FOR /f "delims=" %%q IN ("%%~dpm.") DO (
dtutil /sources %ServerName%  /fc "SQL;%MYDIR1%\%MYDIR2%;%%~nq"
)

错误是由于 dtutil /sources %ServerName% /fc "SQL;%MYDIR1%\%MYDIR2%;%%~nq" 请建议一种方法来检查文件夹 exixts 是否创建否则不创建

4

1 回答 1

2

检查文件夹是否存在:

if not exist "%MYDIR1%\%MYDIR2%\%%~nq\" 
    dtutil /sources %ServerName%  /fc "SQL;%MYDIR1%\%MYDIR2%;%%~nq"
) else (
    echo "%MYDIR1%\%MYDIR2%\%%~nq" already exists
    rem do anything other
)
于 2013-07-05T07:13:17.383 回答