আমি ড্রুপাল,, ওয়ার্ডপ্রেস (কিছুটা বেশ পুরানো সংস্করণ) এবং পাইথনের উপর ভিত্তি করে কিছু কাস্টম অ্যাপ্লিকেশন সহ কয়েকটি বিখ্যাত সিএমএসের এসকিউএল ডাম্পগুলি ব্রাউজ করছি।
এই সমস্ত ডাম্পগুলিতে পূর্ণসংখ্যার পরিবর্তে স্ট্রিং ফ্ল্যাগ সহ ডেটা ছিল। উদাহরণস্বরূপ, একটি পোস্টের মর্যাদা প্রতিনিধিত্ব ছিল published
, closed
অথবা inherit
বরং 1
, 2
অথবা 3
।
আমার কাছে ডেটাবেসগুলির ডিজাইনের যথেষ্ট সীমিত অভিজ্ঞতা আছে এবং আমি কখনও কখনও সাধারণ এসকিউএল এর আগে যাইনি, তবে আমাকে সর্বদা শেখানো হয়েছিল যে এই জাতীয় ডেটার জন্য আমার সংখ্যা / পূর্ণসংখ্যার পতাকা ব্যবহার করা উচিত। এটি স্পষ্টতই tinyint
উদাহরণস্বরূপ, এর চেয়ে কোনও ডাটাবেসে অনেক কম জায়গা ব্যয় করে varchar(9)
।
তাহলে আমি কী মিস করছি? এটি কি ডেটা স্টোরেজ এবং ডেটা রিডানডেন্সির অপচয় নয়? এই কলামগুলি স্ট্রিংয়ের পরিবর্তে পূর্ণসংখ্যা ব্যবহার করলে ব্রাউজিং, অনুসন্ধান এবং সূচীকরণটি আরও দ্রুত হবে না?
char
? কতটা অক্ষম! " 2015 এর সাথে তুলনায় পুরানো