作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
CREATE PROCEDURE SPCheckDirectoryExists
(
@chkdirectory as nvarchar(4000)
)
AS
SET NOCOUNT ON
BEGIN
DECLARE @folder_exists as int
DECLARE @file_results table(file_exists int,file_is_a_directory int,parent_directory_exists int)
INSERT INTO @file_results
(file_exists, file_is_a_directory, parent_directory_exists)
EXEC MASTER.dbo.xp_fileexist @chkdirectory
SELECT @folder_exists = file_is_a_directory
FROM @file_results
--script to create directory
IF @folder_exists = 0
BEGIN
EXECUTE master.dbo.xp_create_subdir @chkdirectory
PRINT @chkdirectory + ' created on ' + @@servername
END
ELSE
PRINT 'Directory already exists'
END
EXEC SPCheckDirectoryExists '\\SampleNetworkpath\Test\Test1'
\\SampleNetworkpath\Path
它的抛出错误,
最佳答案
您还需要检查该目录。像这样的事情,使用相同的逻辑......
CREATE PROCEDURE SPCheckDirectoryExists
(
@chkdirectory as nvarchar(4000)
)
AS
SET NOCOUNT ON
BEGIN
DECLARE @folder_exists as int
DECLARE @file_results table(file_exists int,file_is_a_directory int,parent_directory_exists int)
DECLARE @folder_results table(file_exists int,file_is_a_directory int,parent_directory_exists int)
DECLARE @chkdirectory2 nvarchar(4000) = reverse(right(reverse(@chkdirectory),len(@chkdirectory) - charindex('\',reverse(@chkdirectory))))
DECLARE @folder_exists2 int
INSERT INTO @file_results
(file_exists, file_is_a_directory, parent_directory_exists)
EXEC MASTER.dbo.xp_fileexist @chkdirectory
INSERT INTO @folder_results
(file_exists, file_is_a_directory, parent_directory_exists)
EXEC MASTER.dbo.xp_fileexist @chkdirectory2
SELECT @folder_exists = file_is_a_directory
FROM @file_results
SELECT @folder_exists2 = file_is_a_directory
FROM @folder_results
--script to create directory
IF @folder_exists = 0 and @folder_exists2 = 1
BEGIN
EXECUTE master.dbo.xp_create_subdir @chkdirectory
PRINT @chkdirectory + ' created on ' + @@servername
END
ELSE
PRINT 'Directory already exists or parent directory was invalid'
END
关于sql-server - 在 Using SQL xp_create_subdir 中创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47150459/
要点:我希望能够通过非系统管理员 SQL 用户在文件系统上创建目录。 我正在为部署脚本创建一个 Web 前端,该脚本从指定的模板数据库创建新的数据库。 本质上,我是在备份上述模板数据库,然后将其恢复为
CREATE PROCEDURE SPCheckDirectoryExists ( @chkdirectory as nvarchar(4000) ) AS SET NOCO
从 2005 版开始,Microsoft SQL Server 允许创建不存在的路径。只需使用指向磁盘上所需路径的参数调用存储过程。 DECLARE @targetDirectory nvarchar
从 2005 版开始,Microsoft SQL Server 允许创建不存在的路径。只需使用指向磁盘上所需路径的参数调用存储过程。 DECLARE @targetDirectory nvarchar
我是一名优秀的程序员,十分优秀!