যদি আপনার অর্থ হয়, "ক্ষেত্রের আকারটি আসলে যে কোনও মান হিসাবে সংরক্ষণ করা হয় তার চেয়ে বড় আকারের ঘোষণার জন্য কি কোনও জরিমানা রয়েছে?", তবে যতক্ষণ না এটি ভারচর হিসাবে ঘোষণা করা হয়, উত্তরটি নেই। প্রতিটি এসকিউএল ডিবি ইঞ্জিন যেটি আমি জানি সেগুলি কেবলমাত্র ডেটাতে দেওয়া অক্ষরের সংখ্যা (আরও একটি দৈর্ঘ্যের মান) সঞ্চয় করে। সুতরাং আপনি যদি ক্ষেত্রটিকে বারচর (100) হিসাবে সংজ্ঞায়িত করেন তবে এটিতে কেবলমাত্র 10 টি অক্ষর সংরক্ষণ করেন তবে এটি কেবলমাত্র ডিস্কে 10 টি অক্ষর গ্রহণ করবে (দৈর্ঘ্যের জন্য 2 বাইট বা আরও বেশি)। সন্দেহ হলে আমি নিয়মিতভাবে আমার বারচর ক্ষেত্রকে হাস্যকর আকারে বড় করি।
যদি আপনি বোঝাতে চান, "দীর্ঘ অক্ষরের ক্ষেত্রগুলি সংরক্ষণ করার জন্য কোনও জরিমানা রয়েছে", তবে উত্তরটি হ্যাঁ। ডিস্কের স্থানটি আজ সস্তা, তবে এটি নিখরচায় নয়, তাই আপনি অকারণে এটি নষ্ট করতে চান না। সম্ভবত আরও গুরুত্বপূর্ণ, ডিস্কটি থেকে ডেটা পড়তে সময় লাগে, সুতরাং আপনার ডেটা ক্ষেত্রগুলি যত বেশি হবে প্রোগ্রামটি ধীর হয়ে যায় becomes যদি ক্ষেত্রটি সূচকযুক্ত হয় তবে এটি আপনার পুনরুদ্ধারগুলিকে সত্যিই ধীর করতে পারে, কারণ প্রতিটি পঠনই এই বড় দীর্ঘ ক্ষেত্রের সাথে মূল মানটির তুলনা করতে চলেছে।
মনে রাখবেন যে আপনি যদি ব্যবহারকারীকে একটি বড় ডেটা এন্ট্রি ক্ষেত্র দেন তবে তারা তাড়াতাড়ি বা পরে এটি ব্যবহার করবে।
যা কিছু বলেছিল, আমি খুব ছোটের চেয়ে খুব বড় দিকে ভুল করতাম। ডিস্ক স্পেসটি যথেষ্ট সস্তা যে আপনি ব্যবহারকারীদের ফ্লাইতে সংক্ষিপ্তসারগুলি আবিষ্কার করতে বাধ্য করতে চান না কারণ তারা উপলব্ধ ক্ষেত্রে সঠিক ডেটা ফিট করতে পারে না। আমি আজ যে সিস্টেমে কাজ করছি তাতে একটি পণ্যের বিবরণ ক্ষেত্র রয়েছে যা আমাদের অনেক পণ্যের আসল নামগুলির জন্য খুব ছোট, তাই ব্যবহারকারীদের সংক্ষিপ্ত করতে হবে। এবং অবশ্যই প্রতিটি ব্যবহারকারীর আলাদাভাবে সংক্ষেপণ হয়, তাই আমাদের কাছে একই কথা বলার জন্য বিশটি ভিন্ন উপায় রয়েছে।