sql - T-SQL 使用 OpenRowSet 读取 nvarchar 中的 BulkColumn
问题描述
我在@jsonText
包含特殊字符(例如西班牙语 n)时遇到问题。我相信这是因为它以某种格式SELECT BulkColumn FROM OPENROWSET
返回 blob 。varchar
我试图改变@json_Out
采取,但是当我使用时nvarchar(MAX)
会导致错误OPENJSON
@jsonText
/* Dynamically read json path from i/p variable and perform the openrowset process */
DECLARE @jsonText NVARCHAR(MAX),
@Command NVARCHAR(MAX),
@Param_Def NVARCHAR(500),
@FileVar NVARCHAR(MAX),
@json_Out VARCHAR(MAX);
SET @FileVar = '\\s\storage\root\Health\To_ODS\IDC\Queue\92.json';
SET @Param_Def = N'@JSON_FILE NVARCHAR(MAX), @json_Out varchar(MAX) OUTPUT';
SET @Command = N'SELECT @json_Out = BulkColumn FROM OPENROWSET(BULK ''' + '\\s\storage\root\Health\To_ODS\IDC\Queue\92.json' + N''', SINGLE_BLOB, CODEPAGE=''65001'') ROW_SET';
EXEC sp_executesql @Command,
@Param_Def,
@JSON_FILE = @FileVar,
@json_Out = @jsonText OUTPUT;
SELECT * FROM openjson(@jsonText)
解决方案
推荐阅读
- swift - 在 swift 4 中迭代 3 度嵌套字典
- firebase - ReferenceError:使用 onAuthStateChanged 时未定义 firebase 错误
- sql - 如果我的 where 条件使用 Hive 给出空输出,如何显示表中的所有记录
- xml - 如何解决 Strings.xml 中高棉字符集的特定无效字符?
- git - 在 Windows 上删除 Git 的缓存密码
- javascript - Angularjs - 在 ng-repeat 中 Md-select 中断
- javascript - Ant design - 有没有办法获得我实际使用的样式?
- vue.js - 使日期时间列在 Vue 表 2 中可排序
- java - 在链表中搜索对象变量
- r - 神经网络输出不一致