دسته بندی ها
12:04 1400/07/01

دلیل خطای Arithmetic overflow error converting expression to data type int

مشخصات سوال کننده :
کاربر : pedram_khan     امتیاز کاربر : 277     رتبه کاربر : 6
دسته بندی : Sql Server

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 5758
پاسخ دهنده : saedbfd 14:24 1400/07/02

دلیل خطای Arithmetic overflow error converting expression to data type int در Sql Server

دلیل این خطا سرریز شدن مقدار هست. یعنی شما یک فیلد دارید به نام PackageMainPrice که احتمالا از نوع int تعریفش کردید و در کوئری میخواید از Sum استفاده کنید. خطای شما به این خاطر هست که مقدار جمع مقادیر از مقدار مجاز int بیشتر شده. باید کوئری خودتون رو به صورت زیر تغییر بدید.

Select sum(Cast(up.PackageMainPrice As Bigint))
From UserPackage_Tbl up Join Package_Tbl p on up.PackageID = p.PackageID 
where up.ActiveDeActive = 0 and PackageMainPrice > 0

توسط متد Cast مشخص می کنیم که بیشتر از مقدار int هم بتونیم جمع کنیم و نمایش بدیم.

به این پاسخ امتیاز بدهید    1
امتیاز: 1654 رتبه: 1
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود