Sql 为什么在XML解析时会出现这样的错误:第5行,字符13,输入意外结束; DECLARE@sample表 ( id INT标识, xmlSnippet VARCHAR(最大值) ); 插入@sample ( xmlSnippet ) 价值观 ('2019-07-01 302 1.190000000000 0 1. 2019-07-01 2131 0.386750000000 0 1'); 声明@attreable表 ( id INT, XML值 ); 插入@attreable ( 身份证件 XMLValue ) 选择id, 强制转换(“”+值为xml) 来自@sample 交叉应用字符串_分割(替换(xmlsippet,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,) 其中值为“”; 挑选* 来自“诱惑”;
是Sql 为什么在XML解析时会出现这样的错误:第5行,字符13,输入意外结束; DECLARE@sample表 ( id INT标识, xmlSnippet VARCHAR(最大值) ); 插入@sample ( xmlSnippet ) 价值观 ('2019-07-01 302 1.190000000000 0 1. 2019-07-01 2131 0.386750000000 0 1'); 声明@attreable表 ( id INT, XML值 ); 插入@attreable ( 身份证件 XMLValue ) 选择id, 强制转换(“”+值为xml) 来自@sample 交叉应用字符串_分割(替换(xmlsippet,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,) 其中值为“”; 挑选* 来自“诱惑”;,sql,xml,Sql,Xml,是 DECLARE @sample TABLE ( id INT IDENTITY, xmlSnippet VARCHAR(MAX) ); INSERT @sample ( xmlSnippet ) VALUES ('<monthdate>2019-07-01</monthdate> <automitemno>302</automitemno> <amount>1.190000000
DECLARE @sample TABLE
(
id INT IDENTITY,
xmlSnippet VARCHAR(MAX)
);
INSERT @sample
(
xmlSnippet
)
VALUES
('<monthdate>2019-07-01</monthdate>
<automitemno>302</automitemno>
<amount>1.190000000000</amount>
<currentamount>0.000000000000</currentamount>
<langitemno>1</langitemno>
<monthdate>2019-07-01</monthdate>
<automitemno>2131</automitemno>
<amount>0.386750000000</amount>
<currentamount>0.000000000000</currentamount>
<langitemno>1<monthdate>');
DECLARE @tempTable TABLE
(
id INT,
XMLValue XML
);
INSERT @tempTable
(
id,
XMLValue
)
SELECT id,
CAST('<monthdate>' + value AS xml)
FROM @sample
CROSS APPLY STRING_SPLIT(REPLACE(xmlSnippet, '<monthdate>', '&'), '&')
WHERE value <> '';
SELECT *
FROM @tempTable;
1
故意的?或者仅仅是键入错误?哪个命令给出了错误?从@sample CROSS APPLY STRING_SPLIT(替换(xmlsippet),,,,,,,,,,,,,,,,,,,,,,,,,,,WHERE value''中选择id,CAST(''+值为xml);这是故意的,它超出了一个会有大量XML片段数据差异的字段
<langitemno>1<monthdate>