1

我在将存储过程的结果导出到 csv 文件并将结果保存为 9 个字符的字符串时遇到问题。存储过程的结果是一个简单的单列输出,在 SSMS 中执行时看起来很好,但 csv 中具有前导零的返回值在返回时没有零。表格列是类型varchar(13),我已经进行了转换以尝试保持前导零不被丢弃但没有运气。

这是存储过程:

SELECT DISTINCT
convert(char(8),n.NIIN)
FROM IMMS_ELEC.dbo.NIINList n

这是我正在使用的简单 BCP 脚本:

DECLARE @string AS NVARCHAR(4000)
SELECT    @string = 'BCP "exec CPLINK_Dev.dbo.spSelectLOG_NiinDistinct"
QUERYOUT:\data.csv -c -T -t'
exec master.dbo.xp_cmdshell @string
4

1 回答 1

0

Excel 喜欢认为它比您更了解如何格式化您的数据……这里有一个技巧可以用来超越它。打开一个新的电子表格,选择所有单元格并将类型更改为文本(从常规),然后从记事本(或 SSMS)复制数据,将其粘贴到 Excel 中,如果需要,使用文本到列... Excel 应该停止然后弄乱你的格式。

您也可以对从 Excel 导入数据执行相同的操作,但我发现第一个更有效,您也可以使用它直接从 SSMS 网格结果复制和粘贴。

于 2013-02-02T01:30:38.167 回答