在检索

时间:2015-12-30 20:48:13

标签: sql-server xml xml-parsing

我正在处理从XML输入生成SQL视图的代码。某些字段导致数据转换错误(nvarchar为数字,字符串为日期或时间)。我试图转换值,但看起来在转换之前发生错误,在从XML检索数据的那一刻。我按类型包含有问题的字段:

错误:

  

将数据类型nvarchar转换为数字

时出错

代码:

Threshold = ISNULL(promo.value('Threshold[1]', 'decimal(7,2)'), 0.0), 
ChargeAmount = ISNULL(promo.value('Amount[1]', 'decimal(10,2)'), 0), 
Maximum = ISNULL(promo.value('Maximum[1]', 'decimal(7,2)'), 0), 

错误:

  

从字符串

转换日期和/或时间时转换失败

代码:

StartDate = header.value('BeginDateTime[1]', 'date'), 
StartTime = header.value('BeginDateTime[1]', 'time'), 
EndDate = header.value('EndDateTime[1]', 'date'), 
EndTime = header.value('EndDateTime[1]', 'time'), 

这些字段包含在SELECT子句中,其中至少包含90个字段,其他字段没有问题。所以,任何人都知道我必须对这些线路进行哪些修改以避免错误?提前谢谢。

0 个答案:

没有答案