我有17,000多个Excel工作表,我需要打开它们并从sql数据库中提取信息并存储在其中。只要sql数据类型为varchar
,这一切都可以正常工作。
我想将此varchar
转换为decimal
,因此一旦移至流程的下一阶段,数据将更易于使用。这是我得到的错误:
使用“ 0”参数调用“ ExecuteNonQuery”的异常:“将数据类型varchar转换为数字时出错。”
这是我的sql语句中的值。该代码脚本在PowerShell中。也许这是一个简单的语法错误。没有转换位就可以工作。
convert(decimal(9,2),'"+$WorkSheet.Range('H49').Text.replace("'","''").replace(" ","").replace("$","")+"' )
答案 0 :(得分:0)
我的数据看起来像“ $ 10,210.23”,我正在向下过滤看起来像“ $ 10,210.23”。由于逗号,回头显然不是数字,因此转换失败。在除掉空格和$符号之后,将其过滤掉,就像我期望的那样。谢谢大家。