我收到此錯誤,我找不到原因。sql server 2012:關鍵字'else'附近的語法不正確
case when FormFields.fieldtype like '%date%'
then 'not' + fieldname + ' is null and (convert(datetime,'
+ fieldname +',103) < '
+ coalesce(str(FormFields.MinDate),'1/1/1900') + ')'
+ ' or (convert(datetime,' + fieldname +',103) > '
+ coalesce(str(FormFields.MaxDate), '1/1/2200') + ')'
+
else
'not '+ fieldname + ' is null and (convert(float,'+ fieldname+') <'
+ coalesce(str(FormFields.MinValue),'-99999999')
+ ' or convert(float,'+ fieldname+') >'
+ coalesce(str(FormFields.MaxValue),'99999999') +')'
+
end
前面的代碼沒有任何錯誤:
'not '+ fieldname + ' is null and (convert(float,'+ fieldname+') <'
+ coalesce(str(FormFields.MinValue),'-99999999')
+ ' or convert(float,'+ fieldname+') >'
+ coalesce(str(FormFields.MaxValue),'99999999') +')'
+
我只是想補充另一種情況
也許在'then'行結尾的超級+符號? –
結尾 –
還有另外一個建築字符串代碼的一部分,這就是爲什麼有額外的'+' – aggicd