উত্তর:
ব্যক্তিগতভাবে, আমি BOOLEAN
একটি বুলিয়ান মান জন্য ব্যবহার করতে হবে । তবে মাইএসকিউএলে থাকা সাবধানতাটি [এসসিআর]BOOLEAN
এর এক প্রতিশব্দ হিসাবে মনে রাখবেন ।TINYINT(1)
এর অবশ্যই এটির অর্থ হল আপনি যদি সতর্ক না হন তবে আপনার 0 বা 1 বাদে অন্য মান থাকতে পারে। এই সমস্যা এড়ানোর জন্য, আপনি alias লেখা ব্যবহার করতে পারেন TRUE
এবং FALSE
যখন যথাক্রমে 1 এবং 0 তে ঢোকাতে ও আপডেট করার প্রণালী ডেটা, সেই মানচিত্র হিসাবে।
সম্পূর্ণ হওয়ার জন্য, 5.0.3 এর আগে, BIT
এটিও একটি প্রতিশব্দ ছিল TINYINT(1)
।
যদি আমি এটি সঠিকভাবে বুঝতে পারি, বুলেট সর্বদা কলাম প্রতি 1 বাইট ব্যবহার করে তবে বিআইটি (এন) প্রদত্ত সংখ্যক বিট ধরে রাখতে কয়েকটি বাইট ব্যবহার করবে।
সুতরাং বিট কিছুটা জায়গা বাঁচাতে পারে, তবে আপনার এসকিউএল-এর সাথে কোয়েরি করা দরকার হলে বুলেইন কাজ করা আরও সহজ।
যদি আমার কাছে এমন একটি পতাকা থাকে যা কোনও অ্যাপ্লিকেশন দ্বারা বোঝা যায় এবং অ্যাপ্লিকেশনটিতে একটি একক ক্ষেত্রে সঞ্চয় করা থাকে, তবে আমি বিআইটি (এন) ব্যবহার করার জন্য খুঁজছি। তবে যদি আমার কাছে কলামগুলি থাকে যেগুলি এসকিউএল থেকে জিজ্ঞাসা করা দরকার, আমি বুলিয়ান ব্যবহার করব।
একটি উদাহরণ হ'ল একটি অ্যাপ্লিকেশন যা কোনও সপ্তাহে কোন ইভেন্ট চলবে তা রেকর্ড করার জন্য পতাকা ব্যবহার করেছিল, প্রতি সপ্তাহে কিছুটা সহ, ইভেন্টটি যদি নির্দিষ্ট সপ্তাহে চলে তবে 1 হবে। যদি ডাটাবেসে ডেটাটি কোয়েরি করা সহজ করা যায়, তবে এটি দুটি টেবিল জুড়ে "নরমালাইজড" হয়ে উঠবে, তবে যদি ডাটাটি কেবল ডাটাবেসে সংরক্ষণের প্রয়োজন হয়, তবে অ্যাপ্লিকেশনটি যে ফর্মটি ব্যবহার করে সেটিকে এটি সর্বোত্তমভাবে রাখা হয় is ভিতরে.