دلیل خطای Arithmetic overflow error converting expression to data type int
در Sql Server کویری زیر رو نوشتم ولی با خطا روبرو میشم.
Select sum(up.PackageMainPrice)
From UserPackage_Tbl up Join Package_Tbl p on up.PackageID = p.PackageID
where up.ActiveDeActive = 0 and PackageMainPrice > 0
در واقع میخوام مجموع مقادیر فیلد PackageMainPrice رو محاسبه و نمایش بدم.
خطای دریافتی :
Msg 8115, Level 16, State 2, Line 1
Arithmetic overflow error converting expression to data type int.
پاسخ هوش مصنوعی
خطای "Arithmetic overflow error converting expression to data type int" به این معنی است که مقدار مجموعی که می خواهید محاسبه کنید، از محدوده نوع داده ی int بیشتر است. در SQL Server، نوع داده int می تواند مقادیری از -2,147,483,648 تا 2,147,483,647 را نگه داری کند.
برای رفع این خطا، می توانید نوع داده ورودی را به bigint تغییر دهید یا از تابع CAST برای تبدیل نوع داده استفاده کنید. در زیر یک نمونه از نحوه انجام این کار آورده شده است:
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
استفاده از bigint به شما اجازه می دهد که مقادیر بزرگتری را محاسبه کنید بدون اینکه با خطای سرریز مواجه شوید.
دلیل خطای 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 هم بتونیم جمع کنیم و نمایش بدیم.
- آموزش نصب و راه اندازی دیتابیس PostgreSQL در ویندوز
- PostgreSql چیست ؟ چه کاربردهایی دارد ؟
- دسترسی به پکیج های nuget در زمان قطع نت بین الملل
- نمایش آخرین ردیف دیتاگیرید موقع لود در wpf
- مشکل اینترنت جهانی و عدم دسترسی به cdnjs.cloudflare.com
- مشکل در نصب sql server 2022
- جلوگیری از اد شدن خودکار در گروه و کانال تلگرام
- کم کردن حجم فیلم توسط کد در Asp net core
- چه کسانی استوری تلگرام را می بینند ؟
- برای کسب و کار تلگرام پرمیوم بهتره یا واتس اپ بیزینس ؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- مقایسه ساختار دو دیتابیس در Sql Server
- اشکال در ایجاد کلید خارجی در Sql Server
- تفاوت اوراکل و Sql Server چیست
- جابه جایی سطر و ستون در Sql Server
- استفاده از Stored Procedure در انتیتی فریم ورک code First
- آپدیت لیستی از رکوردها در Sql Server - آپدیت گروهی اطلاعات در Sql Server
- دلیل پرش 1000 تایی خودکار فیلد identity در Sql server
- مشکل نمایش ندادن Data Type موقع تایپ در Sql Server
- کار با تاریخ شمسی وساعت (استفاده از توابع )