উত্তর:
এটি দীর্ঘ (বা ইন্টার 64) এর সাথে মিলে যায় 64), একটি 64-বিট পূর্ণসংখ্যার সাথে সম্পর্কিত।
যদিও ডাটাবেস থেকে সংখ্যাটি যথেষ্ট ছোট হয়ে যায়, এবং আপনি দুর্ঘটনাক্রমে একটি আন্ত 32 ইত্যাদি ব্যবহার করেন তবে আপনি ভাল হয়ে যাবেন। তবে ইন্ট 64 এটি অবশ্যই ধরে রাখবে।
আপনি যদি কিছু ছোট ব্যবহার করেন এবং পুরো আকারের প্রয়োজন হয় তবে আপনি যে ত্রুটিটি পেয়েছেন? একটি স্ট্যাক ওভারফ্লো! হ্যাঁ!
long
মূলধন হয় না।
আমার সবেমাত্র একটি স্ক্রিপ্ট ছিল যা সন্নিবেশের প্রাথমিক কীটি ফিরিয়ে এনে একটি ব্যবহার করে
SELECT @@identity
আমার বিগিন্ট প্রাথমিক কীতে এবং আমি দীর্ঘ ব্যবহার করে একটি কাস্ট ত্রুটি পেয়েছি - সে কারণেই আমি এই অনুসন্ধানটি শুরু করেছি। কমপক্ষে আমার ক্ষেত্রে সঠিক উত্তরটি হ'ল সেই নির্বাচনের মাধ্যমে প্রত্যাবর্তিত প্রকারটি NUMERIC যা দশমিক প্রকারের সমান। দীর্ঘ ব্যবহারের ফলে castালাই ব্যতিক্রম ঘটবে।
একাধিক গুগল অনুসন্ধানে (বা এমনকি স্ট্যাক ওভারফ্লোতেও!) আপনার উত্তরগুলি পরীক্ষা করার এটি একটি কারণ।
একজন ডেটাবেস প্রশাসকের উদ্ধৃতি দিতে যিনি আমাকে সাহায্য করেছিলেন:
... বিগইন্ট INT64 এর মতো নয়, যতই তারা দেখতে একই রকম হয়। কারণটির অংশটি হ'ল এসকিউএল ঘন ঘন স্বাভাবিক প্রক্রিয়াকরণের অংশ হিসাবে ইন / বিগআইএন্টকে সংখ্যায় রূপান্তরিত করে। সুতরাং এটি যখন OLE বা .NET এ যায় তখন রূপান্তরটি NUMERIC থেকে INT হয়।
মুদ্রিত মান একই দেখায় আমরা প্রায়শই লক্ষ্য করি না। "
দীর্ঘ ডেটাটাইপ ব্যবহার করুন।
আপনি long
টাইপ বা ব্যবহার করতে পারেনInt64
int- এ SQL এর যে সরাসরি মানচিত্র int32 একটি আদিম টাইপ অর্থাত হিসাবে জানি int- এ মধ্যে সি # যেহেতু
bigint SQL সার্ভার মধ্যে সরাসরি মানচিত্র int64 অর্থাত একটি আদিম টাইপ হিসাবে জানি দীর্ঘ মধ্যে সি #
বৃহত্তর থেকে পূর্ণসংখ্যার এখানে সংজ্ঞা দেওয়া থাকলে একটি সুস্পষ্ট রূপান্তর
বেশিরভাগ ক্ষেত্রে এটি # সি দীর্ঘ হয় (অন্তত )64)