关于用存储过程来检查指定目录下文件是否存在的问题

lamhouyue 2007-01-15 10:32:26
这个问题前面提到过,就是用存储过程完成对指定目录下备份数据压缩包的检查,看他是否存在并返回结果保存
这个检查是按照文件的名字来检验,名字的规律如下:
全备:'OperationDB_FULL_' + @RCL_DATE + '.dmp'
差备:'OperationDB_DIFF_' + @RCL_DATE + '.dmp'


经过大家的帮助,我写点东西,但是运行是好象有问题,请大家帮我修改一下:

CREATE PROC sp_FileExists
@RCL_DATE =convert(char(8),GETDATE(),112)
AS
DECLARE @cmd as varchar(500)

set @cmd = 'F:\DB_Back\' + 'dbmms_FULL_' + @RCL_DATE + '.dmp'

CREATE TABLE #nw (id int identity(1,1),message varchar(300))

INSERT INTO #nw EXEC master..xp_cmdshell @cmd

IF EXISTS(SELECT 1 FROM #T WHERE id>7)
SELECT '1' result
ELSE
SELECT '0' result

drop #nw


对于开始的创建和定义可能有些问题,请大家多修改一下,谢谢
...全文
194 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxbyhcsdn 2007-01-15
  • 打赏
  • 举报
回复
SET @file = 'c:\windows\notepad.exe' 就是来存放文件的全路径名的三!!

你吧老大的代码里面的 @file ='F:\DB_Back\' + 'dbmms_FULL_' + @RCL_DATE + '.dmp';就可以了!不过要用一个循环哟!!


你们头要求设计个程序然后运行看结果!
----------------------------------------
既然这样为什么不写一个Exe程序来做这事情捏??
lamhouyue 2007-01-15
  • 打赏
  • 举报
回复
谢谢你的指教,但是有点问题

DECLARE @re int, @file nvarchar(260)
SET @file = 'c:\windows\notepad.exe'
EXEC master..xp_fileexist @file, @re out
SELECT @re -- 返回1, 表示存在, 返回0, 表示不存在


因为要检查的数据包在固定目录下,但是老大给出的代码我不太清楚该把目录的文件放在哪里
我们头要求设计个程序然后运行看结果,烦你帮帮我
lamhouyue 2007-01-15
  • 打赏
  • 举报
回复
不好意思,#T是笔误,应该是:
CREATE PROC sp_FileExists
@RCL_DATE =convert(char(8),GETDATE(),112)
AS
DECLARE @cmd as varchar(500)

set @cmd = 'F:\DB_Back\' + 'dbmms_FULL_' + @RCL_DATE + '.dmp'

CREATE TABLE #nw (id int identity(1,1),message varchar(300))

INSERT INTO #nw EXEC master..xp_cmdshell @cmd

IF EXISTS(SELECT 1 FROM #nw WHERE id>7)
SELECT '1' result
ELSE
SELECT '0' result

drop #nw
zjcxc 元老 2007-01-15
  • 打赏
  • 举报
回复
用个扩展存储过程就可以判断了

DECLARE @re int, @file nvarchar(260)
SET @file = 'c:\windows\notepad.exe'
EXEC master..xp_fileexist @file, @re out
SELECT @re -- 返回1, 表示存在, 返回0, 表示不存在
冷箫轻笛 2007-01-15
  • 打赏
  • 举报
回复
#T 的数据从哪插入的?

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧