SSMS - 将长数据导出到 excel 文件而不截断数据

SSMS - Export long data into excel file without truncate data

我有一个要导出到 xls 文件中的脚本。

由于其中一个字段是产品描述,它有逗号,csv 文件不是一个好的选择。

我尝试使用 DTS 向导,但描述字段是 nvarchar(8000),并且在尝试转换为 varchar(255) 或 longtext 时 DTS 失败。

查询结果有100k+行。

我尝试将结果发送到 .rpt 文件,但描述字段也被截断了。

我尝试将结果发送到 .csv 文件,但描述字段也被截断了。

我尝试在 TSQL 中执行 OPENROWSET 命令,但 OLE DB 提供程序抛出错误。

有没有办法在不截断任何数据、不大量解析字段(例如删除逗号、添加 "、更改 table 数据结构的情况下,通过字段获得 excel 结果..) ?

declare @v1 varchar(2000);
set @v1 = replicate('ab',1000)
insert into i3 values (@v1)
select  * from i3

将其保存为 csv 文件。 (右键单击结果并另存为 CSV)。 当您在 excel 中打开 csv 文件时,我得到了整个值。

您还可以使用 BCP 将数据从 SQL 服务器导出到 CSV。

您也可以使用 SSIS

您可以(在 SSMS 中)通过在对象资源管理器中选择要从中导出的数据库来使用 window 并右键单击选择任务 --> 导出数据并按照选项卡进行操作。