8

我在目录中有一个文件\\myServer\Admin\temp\testtemp.txt

我需要写一个 TSQL

  1. 搜索testtemp.txt文件。
  2. 如果存在,则创建它的副本并将其重命名为Copytesttemp.txt
  3. 如果testtemp.txt上面的目录中已经有这样 的

    \\abcd\Admin\temp\Copytesttemp.txt
    
  4. 然后删除它并重新创建Copytesttemp.txt

我如何实现它?谢谢。

4

3 回答 3

20

您可以使用 xp_cmdshell 运行您喜欢的任何 DOS 命令,例如

declare @cmdstring varchar(1000)

set @cmdstring = 'copy \\myServer\Admin\temp\testtemp.txt \\myServer\Admin\temp\Copytesttemp.txt'
exec master..xp_cmdshell @cmdstring 

只需确保在您的安装中启用了 xp_cmdshell。

于 2012-05-08T15:30:47.037 回答
3

创建一个运行命令脚本来执行操作的 SQL 代理作业。

于 2012-05-08T15:10:51.947 回答
0

你可以试试这个复制文件并重命名

EXEC master..xp_cmdshell 'COPY D:\T1\a.txt D:\T2\b.txt'

只能像 CMD 一样复制和移动

EXEC master..xp_cmdshell 'COPY D:\T1\abcd.txt D:\T2'
EXEC master..xp_cmdshell 'Move D:\T1\abcd.txt D:\T2'
于 2017-07-21T12:39:13.800 回答