--1.开启全限
sp_configure 'show advanced options',1
reconfigure
go
sp_configure 'xp_cmdshell',1
reconfigure
Go
可先通过exec sp_configure权限配置
--2.如果导出到共享文件夹,请添加信任链接(一般项目中是导出到共享文件夹),如果是导出数据库本地,则直接进行第3步
exec xp_cmdshell 'net use \\192.168.88.254\work_down_excel_zip "tykj66TYKJ" /USER:administrator'
exec xp_cmdshell 'net use \\共享文件夹ip "密码" /USER:用户名'
--3.导出到共享文件夹,例如:\\192.168.88.254\work_down_excel_zip\dept20170215.xls。注意一个细节,下面的命令不能有换行
exec master..xp_cmdshell 'bcp "select * from [CTY_MS].[DBO].DataRecordTaskInfo" queryout "\\192.168.88.254\work_down_excel_zip\dept20170215.xls" -c -T -U "sa" -P "tykj66TYKJ"'
sp_configure 'show advanced options',1
reconfigure
go
sp_configure 'xp_cmdshell',1
reconfigure
Go
可先通过exec sp_configure权限配置
--2.如果导出到共享文件夹,请添加信任链接(一般项目中是导出到共享文件夹),如果是导出数据库本地,则直接进行第3步
exec xp_cmdshell 'net use \\192.168.88.254\work_down_excel_zip "tykj66TYKJ" /USER:administrator'
exec xp_cmdshell 'net use \\共享文件夹ip "密码" /USER:用户名'
--3.导出到共享文件夹,例如:\\192.168.88.254\work_down_excel_zip\dept20170215.xls。注意一个细节,下面的命令不能有换行
exec master..xp_cmdshell 'bcp "select * from [CTY_MS].[DBO].DataRecordTaskInfo" queryout "\\192.168.88.254\work_down_excel_zip\dept20170215.xls" -c -T -U "sa" -P "tykj66TYKJ"'
'bcp "select查询出来的内容" queryout "\\远程共享文件夹\dept20170215.xls" -c -T -U "数据库连接用户" -P "数据库连接密码"'
--4.步骤3的命令,可以改写为下面命令,可以在导出excel时,加上表头。表头即为''用户ID'',''用户名'',''生日'',''地址'',''电话'',应该与要导出的数据个数一直,且类型一致。
exec master..xp_cmdshell 'bcp "select ''用户ID'',''用户名'',''生日'',''地址'',''电话'' union all select convert(varchar(20),[userid]),convert(varchar(20),[username]),convert(varchar(20),[registertime]),convert(varchar(20),[listprice]),convert(varchar(20),[tel]) FROM
[Test].[dbo].[User_test]" queryout "d:\dept20170215.xls" -c -T '
本文详细介绍如何在SQL Server环境中通过启用扩展存储过程xp_cmdshell并配置相关参数,实现将数据库中的数据导出到共享文件夹的具体步骤。此外,还介绍了如何在导出Excel文件时添加表头。
1万+

被折叠的 条评论
为什么被折叠?



