sqlserver在T-sql里使用bcp导出excel

本文介绍了如何在SQLServer中通过T-SQL启用xp_cmdshell,使用bcp命令将数据导出到Excel文件。详细步骤包括开启高级功能,编写SQL查询语句,设置文件路径和名称,以及关闭高级功能。还提到了可能遇到的问题,如查询语句长度限制、查询报表的竖转行、存储过程使用、数据表路径、登录失败、缺少标题、排序问题及解决方案。
摘要由CSDN通过智能技术生成


--第一步,开启高级功能
EXEC sp_configure 'show advanced options', 1; 
GO 
RECONFIGURE; 
GO 
EXEC sp_configure 'xp_cmdshell',1
RECONFIGURE;
go

--第二步,bcp导出excel

declare @file_path  nvarchar(50),@file_name nvarchar(500),@exec_sql nvarchar(4000)
set @file_path = 'D:\'  --定义导出excel的绝对路径
set @file_name = 'test' + CONVERT(nvarchar(50), GETDATE(), 112)+'.xls'  --定义excel的文件名
set @exec_sql = 'select * from sys.objects a'  --定义sql查询语句;数据表需使用的完整路径;sql 语句必须一行完成
set @exec_sql = ' bcp "'+@exec_sql+'" queryout "'+@file_path+''+@file_name+'" -c -T -S "填写数据库服务器名,本机默认数据库为localhost" -U "填写数据库登录账号,如sa" -P "填写数据库登录密码"';
exec xp_cmdshell @exec_sql

--第三步,关闭高级

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值