আমরা ব্যবহার double
।
* খাবি *
কেন?
কারণ এটি দশমিক পয়েন্ট যেখানে রয়েছে তাতে কোনও বাধা ছাড়াই যে কোনও 15 ডিজিটের সংখ্যা উপস্থাপন করতে পারে । সবগুলি একটি পরিমাপের জন্য 8 বাইট!
সুতরাং এটি উপস্থাপন করতে পারেন:
0.123456789012345
123456789012345.0
... এবং এর মধ্যে কিছু।
এটি কার্যকর কারণ আমরা বৈশ্বিক মুদ্রাগুলি নিয়ে কাজ করছি এবং double
আমরা যে সংখ্যক দশমিক জায়গার মুখোমুখি হব তা সঞ্চয় করতে পারি store
একটি একক double
ক্ষেত্র জাপানি দশকে 999,999,999,999,999, মার্কিন ডলারে 9,999,999,999,999.99 এবং এমনকি বিটকয়েনগুলিতে 9,999,999.99999999s উপস্থাপন করতে পারে
আপনি যদি এটির সাহায্যে একই চেষ্টা করে থাকেন তবে আপনার 14 বাইটের মূল্য decimal
প্রয়োজন decimal(30, 15)
।
আদেশ সহকারে
অবশ্যই, ব্যবহার double
করা সতর্কতা ছাড়াই নয়।
তবে কারও কারও মতে প্রবণতা হওয়ায় এটি নির্ভুলতার ক্ষতি হয় না । যদিও double
নিজেই বেস 10 সিস্টেমের অভ্যন্তরীণভাবে নির্ভুল নাও হতে পারে , আমরা ডাটাবেস থেকে তার যে দশমিক দশমিক স্থানে টানছি তার মানকে গোল করে এটি সঠিক করে তুলতে পারি । প্রয়োজনে তা হয়। (যেমন যদি এটি আউটপুট করা হয়, এবং বেস 10 এর উপস্থাপনা প্রয়োজন required)
সাবধানবাণীগুলি হ'ল, যে কোনও সময় আমরা এটির সাথে পাটিগণিত সম্পাদন করি, তার আগে আমাদের ফলাফলটি স্বাভাবিক করতে হবে (এর গুরুত্বপূর্ণ দশমিক স্থানে গোল করে):
- এটিতে তুলনা করা।
- এটি ডাটাবেসে ফিরে লেখা।
আর এক ধরণের সতর্কতাই হ'ল, decimal(m, d)
যেখানে ডেটাবেস প্রোগ্রামগুলির m
সংখ্যাগুলির চেয়ে বেশি সংখ্যক সংখ্যা সন্নিবেশ করা থেকে বিরত রাখে , এর সাথে এই জাতীয় কোনও বৈধতা উপস্থিত নেই double
। একটি প্রোগ্রাম 20 ডিজিটের কোনও ব্যবহারকারীকে ইনপুট করা মান couldোকাতে পারে এবং এটি চুপচাপ একটি ভুল পরিমাণ হিসাবে রেকর্ড হয়ে যায়।
deimal(10,2)
আমি যা ব্যবহার করি তা হ'ল ... আপনি প্রত্যাশিত আকারের উপর নির্ভর করে মানগুলি সামঞ্জস্য করতে পারেন