我正在操作包含用ASCII行和列分隔符分隔的行和列值的大值。结果是我在SQL表中插入的表格数据。
获得想法的简单例子:
George|20;Ivan|15;Peter|10;
转换为:
George 20
Ivan 15
Peter 10
并插入Users ([name], [age]
)表。
在插入之前,使用TRY_CONVERT
函数将每个值转换为其列类型。问题是这与VARBINARY
数据无法正常工作。例如(第二个输出是正确的):
DECLARE @A NVARCHAR(1024) = '0xFE520676B1A1D93DABAB2319EEA03674F3632EAEEB163D1E88244F5EB1DE10EB';
SELECT TRY_CONVERT(VARBINARY(255), @A)
-- 0x300078004600450035003200300036003700360042003100410031004400390033004400410042004100420032003300310039004500450041003000330036003700340046003300360033003200450041004500450042003100360033004400310045003800380032003400340046003500450042003100440045003100300045004200
SELECT TRY_CONVERT(VARBINARY(255), 0xFE520676B1A1D93DABAB2319EEA03674F3632EAEEB163D1E88244F5EB1DE10EB)
-- 0xFE520676B1A1D93DABAB2319EEA03674F3632EAEEB163D1E88244F5EB1DE10EB
当VARBINARY
数据作为字符串传递时,字符串将自身转换为VARBINARY
。我需要传递没有引号的数据,但是当传递string类型的列/变量时如何执行此操作?