কম্পিউটার টিউটোরিয়াল

MySQL DECIMAL দশমিক বিন্দুর পর ১০ ডিজিট নির্ভুলতা সহ সেট করা

আপনি জানেন DECIMAL() মেথড দুটি প্যারামিটার নেয়। প্রথম প্যারামিটার মোট ডিজিটের সংখ্যা বলে এবং দ্বিতীয় প্যারামিটার দশমিক বিন্দুর পর ডিজিটের সংখ্যা বলে। তাই যদি DECIMAL(10,10) ব্যবহার করেন, তবে আপনি শুধু ১০টি ভগ্নাংশ ডিজিট ব্যবহার করতে পারবেন।

উদাহরণ: DECIMAL(20,10) দিয়ে 0.9999999999 সংরক্ষণ করা।

উপরের আলোচনা বুঝতে একটি টেবিল তৈরি করা যাক। টেবিল তৈরির কোয়েরি:

mysql> create table Decimal_Demo 
-> ( 
-> Id int NOT NULL AUTO_INCREMENT, 
-> Price DECIMAL(20,10), 
-> PRIMARY KEY(Id) 
-> ); Query OK, 0 rows affected (1.06 sec)

এখন টেবিলে কিছু রেকর্ড ইনসার্ট করা যাক। রেকর্ড ইনসার্ট করার কোয়েরি:

mysql> insert into Decimal_Demo(Price) values(7475433123.1727374747); Query OK, 1 row affected (0.15 sec) mysql> insert into Decimal_Demo(Price) values(999.9999999999); Query OK, 1 row affected (0.19 sec) mysql> insert into Decimal_Demo(Price) values(1363645345.1726364664); Query OK, 1 row affected (0.16 sec) mysql> insert into Decimal_Demo(Price) values(1.172636466437475656565); Query OK, 1 row affected, 1 warning (0.53 sec) mysql> insert into Decimal_Demo(Price) values(0.9999999999); Query OK, 1 row affected (0.20 sec)

সিলেক্ট স্টেটমেন্ট দিয়ে সব রেকর্ড দেখানো যাক। কোয়েরিটি হলো:

mysql> select *from Decimal_Demo;

আউটপুট নিচে দেওয়া হলো:

+----+-----------------------+ | Id | Price | +----+-----------------------+ | 1 | 7475433123.1727374747 | | 2 | 999.9999999999 | | 3 | 1363645345.1726364664 | | 4 | 1.1726364664 | | 5 | 0.9999999999 | +----+-----------------------+ 5 rows in set (0.00 sec)

ব্যাখ্যা: DECIMAL(M,D)-এ M = মোট ডিজিট (পূর্ণসংখ্যা + ভগ্নাংশ), D = দশমিক বিন্দুর পর ডিজিট। DECIMAL(20,10) মানে মোট ২০ ডিজিট 그중 ১০টি দশমিক বিন্দুর পর। চতুর্থ রেকর্ডে (1.172636466437475656565) সতর্কতা (warning) আসেছে কারণ ইনপুটে ১০টির চেয়ে বেশি দশমিক ডিজিট ছিল, MySQL অটোমেটিক্যালি রাউন্ড বা ট্রানকেট করেছে। আর্থিক হিসাব-নিকাশে DECIMAL ব্যবহার করা বেস্ট প্র্যাকটিস যাতে ফ্লোটিং পয়েন্ট ইরর না হয়।

  1. MySQL-এ UNIX_TIMESTAMP(NOW()) ব্যবহার করে বর্তমান টাইমস্ট্যাম্প ইন্টিজার হিসেবে সংরক্ষণ করা

  2. MySQL-এ CASE WHEN দিয়ে ছাত্রদের নম্বর অনুযায়ী কাস্টম মেসেজ সেট করা

  3. MySQL APT রিপোজিটরি দিয়ে MySQL আপগ্রেড

  4. MySQL Yum রিপোজিটরি দিয়ে MySQL আপগ্রেড