从字符串向 datetime 转换时失败。该如何处理
从字符串向 datetime 转换时失败。
update t1
set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+cast(FPeriod as varchar(2))),t1.FAmount=t2.FEndBal
from #cunhuo
where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0
------解决方案--------------------
try:
update t1
set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+'-'+cast(FPeriod as varchar(2))+'01'),t1.FAmount=t2.FEndBal
from #cunhuo
where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0
------解决方案--------------------
还要一个短横:
update t1
set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+'-'+cast(FPeriod as varchar(2))+'-01'),t1.FAmount=t2.FEndBal
from #cunhuo
where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0
------解决方案--------------------
update t1
set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+cast(FPeriod as varchar(2))),t1.FAmount=t2.FEndBal
from #cunhuo
where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0
------解决方案--------------------
try:
update t1
set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+'-'+cast(FPeriod as varchar(2))+'01'),t1.FAmount=t2.FEndBal
from #cunhuo
where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0
------解决方案--------------------
还要一个短横:
update t1
set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+'-'+cast(FPeriod as varchar(2))+'-01'),t1.FAmount=t2.FEndBal
from #cunhuo
where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0
------解决方案--------------------
- SQL code
cast(t2.FYear as varchar(4))+cast(FPeriod as varchar(2))
------解决方案--------------------
- SQL code
update t1 set t1.FDate=convert(datetime,cast(t2.FYear as varchar(4))+cast(FPeriod as varchar(2))+'01'),t1.FAmount=t2.FEndBal from #cunhuo where cast(t1.FPrice as varchar(255)) is null and t1.FQty>0