স্টোরেজে, VARCHAR(255)নির্দিষ্ট প্রদত্ত সারিতে আপনার প্রয়োজনীয় দৈর্ঘ্যটি সংরক্ষণ করার জন্য যথেষ্ট স্মার্ট , এটি CHAR(255)সর্বদা 255 অক্ষর সংরক্ষণ করবে।
তবে আপনি যেহেতু এই প্রশ্নটি মাইএসকিউএলে ট্যাগ করেছেন, আমি একটি মাইএসকিউএল-নির্দিষ্ট টিপ উল্লেখ করব: স্টোর ইঞ্জিন স্তর থেকে এসকিউএল স্তরে সারিগুলি অনুলিপি করা হয়, তাই স্থির-প্রস্থের সারিগুলির সাথে কাজ করার সুবিধা অর্জনের VARCHARজন্য ক্ষেত্রগুলি রূপান্তরিত হয় CHAR। সুতরাং মেমরির স্ট্রিংগুলি আপনার ঘোষিত কলামটির সর্বোচ্চ দৈর্ঘ্যে প্যাডড হয়ে যায়VARCHAR ।
যখন আপনার কোয়েরি স্পষ্টভাবে একটি অস্থায়ী টেবিল তৈরি করে, উদাহরণস্বরূপ বাছাই করার সময় বা GROUP BY, এটি প্রচুর স্মৃতি ব্যবহার করতে পারে। আপনি যদি VARCHAR(255)ডেটার জন্য অনেকগুলি ক্ষেত্র ব্যবহার করেন যা এত দীর্ঘ হওয়ার প্রয়োজন হয় না, এটি অস্থায়ী টেবিলটিকে খুব বড় করে তুলতে পারে।
আপনি আরও জানতে চাইবেন যে এই "প্যাডিং আউট" আচরণের অর্থ হ'ল একফাইট বাইট সামগ্রী (যেমন এসকিআই বা ল্যাটিন 1 অক্ষর) দিয়ে স্ট্রিং করা স্ট্রিংয়ের জন্যও ইউটিএফ 8 অক্ষর সেট প্যাডের সাথে অক্ষর প্রতি তিন বাইট প্যাড দেয় declared এবং অনুরূপভাবে utf8mb4 অক্ষর সেট মেমরির অক্ষর প্রতি চার বাইটে স্ট্রিং প্যাড করে দেয়।
সুতরাং VARCHAR(255)কোনও "ইউটিউব না" এর মতো একটি সংক্ষিপ্ত স্ট্রিং সংরক্ষণ করে ডিস্কে 11 বাইট লাগে (দশটি নিম্ন-চরসেট অক্ষর, দৈর্ঘ্যের জন্য একটি বাইট) তবে এটি মেমরিতে 765 বাইট নেয়, এবং এইভাবে টেম্প টেবিল বা সাজানো ফলাফলগুলিতে।
আমি মাইএসকিউএল ব্যবহারকারীদের সাহায্য করেছি যারা অজান্তে 1.5 জিবি টেম্প টেবিলগুলি ঘন ঘন তৈরি করে এবং তাদের ডিস্কের স্থানটি পূরণ করে। তাদের প্রচুর VARCHAR(255)কলাম ছিল যা অনুশীলনে খুব ছোট স্ট্রিং সংরক্ষণ করা হয়েছিল।
আপনি যে ধরণের ডেটা সঞ্চয় করতে চান তার উপর ভিত্তি করে কলামটি নির্ধারণ করা ভাল best অন্যান্য লোকেরা যেমন উল্লেখ করেছে, তেমন অ্যাপ্লিকেশন সম্পর্কিত সীমাবদ্ধতাগুলি প্রয়োগ করার সুবিধা রয়েছে। তবে উপরে বর্ণিত মেমরির বর্জ্য এড়াতে এটির শারীরিক সুবিধা রয়েছে।
অবশ্যই সবচেয়ে দীর্ঘতম ডাক ঠিকানাটি কী তা জানা খুব কঠিন, যার কারণেই অনেক লোক একটি দীর্ঘ চয়ন করেন VARCHARযা অবশ্যই কোনও ঠিকানার চেয়ে দীর্ঘ longer এবং 255 প্রথাগত কারণ এটি VARCHARদৈর্ঘ্যের এক বাইট দিয়ে এনকোড করা যায় এমন একটির সর্বোচ্চ দৈর্ঘ্য । এটি VARCHAR5.0 এর চেয়েও পুরনো মাইএসকিউএলে সর্বোচ্চ দৈর্ঘ্য ছিল।