我有一个返回1列的SQL查询。我在SQL Server Management Studio 2008R2中运行它。 我使用File \ Save Grid Results并创建.TXT文件。
我的问题是文件的第一条记录在数据前插入了3个字节。它们的三个字节是x'EFBBBF'。当我在另一个进程中使用该文件时,这会导致问题。
我得到了同样的东西,我保存为.TXT或.CSV。
有什么想法吗?
答案 0 :(得分:8)
找到它。
ANSI编码的文件不包含UTF-8 BOM。
答案 1 :(得分:1)
kuru kuru na在正确的轨道上,这些字节是UTF-8 BOM。我没有找到任何设置来更改Management Studio用于保存结果的文件编码。我只是使用Vim在保存文件后删除BOM。您最喜欢的文本编辑器可能有类似的选项,或者您可以使用像iconv这样的工具,如果您需要删除标记或在脚本中重新编码文件。
答案 2 :(得分:0)
我认为它被称为“bom”(字节顺序标记)签名,它与告诉你文件中包含utf字符的任何内容有关。我怀疑它可能在你的SMSS设置中某处。但至少这是一个开始的地方。