我正在使用BCP将json文件加载到SQL Server(是的,我知道有更好的方法,但是需要尝试一下)
问题是,由于格式文件中的终止符被删除,所以json文档格式不正确,但我希望包含它
bcp db.dbo.test IN G:\JSON\json.out -f G:\JSON\formatfile.out -T
格式文件终止符:
<FIELD ID="1" xsi:type="CharTerm" TERMINATOR="] }" COLLATION="Latin1_General_CI_AI"/>
如何在不截断json结束标记的情况下结束文件?
答案 0 :(得分:1)
BCP并非旨在将文件导入到单列中,因此您遇到了这些问题。要将文件导入为单个对象,请使用OPENROWSET(... SINGLE_BLOB)功能,如下所示:
INSERT INTO JsonTable(jsonColumn)
SELECT BulkColumn
FROM OPENROWSET (BULK ‘TextFile Path’, SINGLE_BLOB) FileName
答案 1 :(得分:0)
如果绝对肯定要使用BCP,那么XML文件通常会使用一种技巧,而JSON文件也应如此。
默认情况下,这会将整个XML文件作为一个单元导入。它也应该在JSON文件上工作,但我不能保证。