首页  >  文章  >  数据库  >  SQL xp_cmdshell

SQL xp_cmdshell

WBOY
WBOY原创
2016-06-07 14:57:111396浏览

xp_cmdshell 创建文件夹,复制文件,导出数据到TXT,读取TXT,调用RAR--压缩文件夹 无 GO---打开xp_cmdshellEXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGUREGO---创建文件夹declare @shellCommand

xp_cmdshell 创建文件夹,复制文件,导出数据到TXT,读取TXT,调用RAR--压缩文件夹
GO
---打开xp_cmdshell
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE

GO
---创建文件夹
declare @shellCommand nvarchar(1024)
Set @shellCommand='"mkdir C:\sqlcreatefold"'
exec xp_cmdshell @shellCommand

GO
--复制文件--准备一个空的文本文件在C盘
declare @shellCommand nvarchar(1024)
Set @shellCommand='Copy "C:\1.txt'+'" "C:\sqlcreatefold\1.txt'+'"'
exec xp_cmdshell @shellCommand
GO
--导出数据到TXT
Create table ##temp(line varchar(100))
Insert into ##temp(line)values('asdfghjklasdfghjkl')
Insert into ##temp(line)values('一二三四五六七')
declare @shellCommand nvarchar(1024)
Set @shellCommand='bcp "Select line From ##temp" queryout C:\sqlcreatefold\1.txt'+' -S"." -U"sa" -P"123456" -c -T'
exec xp_cmdshell @shellCommand
drop table ##temp

GO
--读取TXT文件
Create table ##temp(line varchar(100))
exec(N'bulk insert ##temp from N''C:\sqlcreatefold\1.txt''')
select * From ##temp
drop table ##temp

GO
--调用RAR--压缩文件夹
declare @shellCommand nvarchar(1024)
declare @WinRar varchar(128)
set @WinRar='C:\Program Files\WinRAR\WinRAR.exe'
Set @shellCommand='""'+@WinRar+'"  a -ep1 -afzip -df -ibck C:\sqlcreatefold\Package.zip C:\sqlcreatefold"'
exec xp_cmdshell @shellCommand
set @shellCommand='" dir C:\sqlcreatefold"'
exec xp_cmdshell @shellCommand
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn