BCP 导出 - 空字符串
BCP Export - Empty String
我有一个观点需要保持原样,因为到处都在调用它。所以不能修改。
视图 returns 某些列为空字符串。
select col1, col2, col3, '' as col4, '' as col5 from myTable
这就是我启动 BCP 命令以将该视图导出到 csv 文件的方式。 @FileLocation
和 @FileName
是预先设置的。
declare @SQL varchar(8000)
set @SQL = 'select col1, col2, col3, '''' as col4, '''' as col5 from myTable'
set @SQL = 'bcp "' + @SQL + '" queryout "' + @FileLocation + @FileName + '" -c -t; -q -T"'
exec master..xp_cmdshell @SQL
文件创建没有问题,但 col4
和 col5
在 Notepad++ 中显示为“NUL
”。
我需要如何修改我的 BCP 命令以导出空字符串?
bcp.exe 有一个奇怪的行为,在 out/queryout:
期间翻转 NULL
和 ''
When extracting data, the bcp utility represents an empty string as a null and a null string as an empty string.
尝试使用以下查询:
select col1, col2, col3, null as col4, null as col5 from myTable
看了所有的评论,似乎没有办法完成我想要的。我最终复制了视图并以适用于 bcp
的方式填充了空白字段。
非常烦人,但显然是唯一可行的选择。
我有一个观点需要保持原样,因为到处都在调用它。所以不能修改。 视图 returns 某些列为空字符串。
select col1, col2, col3, '' as col4, '' as col5 from myTable
这就是我启动 BCP 命令以将该视图导出到 csv 文件的方式。 @FileLocation
和 @FileName
是预先设置的。
declare @SQL varchar(8000)
set @SQL = 'select col1, col2, col3, '''' as col4, '''' as col5 from myTable'
set @SQL = 'bcp "' + @SQL + '" queryout "' + @FileLocation + @FileName + '" -c -t; -q -T"'
exec master..xp_cmdshell @SQL
文件创建没有问题,但 col4
和 col5
在 Notepad++ 中显示为“NUL
”。
我需要如何修改我的 BCP 命令以导出空字符串?
bcp.exe 有一个奇怪的行为,在 out/queryout:
期间翻转NULL
和 ''
When extracting data, the bcp utility represents an empty string as a null and a null string as an empty string.
尝试使用以下查询:
select col1, col2, col3, null as col4, null as col5 from myTable
看了所有的评论,似乎没有办法完成我想要的。我最终复制了视图并以适用于 bcp
的方式填充了空白字段。
非常烦人,但显然是唯一可行的选择。