প্রতি মাইএসকিউএল ডক্স , সেখানে চার টেক্সট ধরনের হয়:
- TINYTEXT
- টেক্সট
- MEDIUMTEXT
- LONGTEXT
অক্ষরের এনকোডিংটি ইউটিএফ -8 ধরে ধরে আমি প্রতিটি তথ্য টাইপের কলামে সর্বাধিক দৈর্ঘ্যটি কী পরিমাণে সঞ্চয় করতে পারি?
প্রতি মাইএসকিউএল ডক্স , সেখানে চার টেক্সট ধরনের হয়:
অক্ষরের এনকোডিংটি ইউটিএফ -8 ধরে ধরে আমি প্রতিটি তথ্য টাইপের কলামে সর্বাধিক দৈর্ঘ্যটি কী পরিমাণে সঞ্চয় করতে পারি?
উত্তর:
ডকুমেন্টেশন থেকে :
প্রকার | সর্বোচ্চ দর্ঘ্য ----------- + + ------------------------------------- টিনটাইটস | 255 (2 8 −1) বাইট পাঠ্য | 65,535 (2 16 −1) বাইট = 64 কিবি মিডিয়ামটেক্সট | 16,777,215 (2 24 −1) বাইট = 16 এমআইবি লংটেক্সট | 4,294,967,295 (2 32 −1) বাইট = 4 জিআইবি
নোট করুন যে আপনার কলামে অক্ষরগুলির সংখ্যা সংরক্ষণ করা যাবে তা অক্ষর এনকোডিংয়ের উপর নির্ভর করবে ।
A TEXT column with a maximum length of 255 (28 – 1) characters. The effective maximum length is less if the value contains multi-byte characters.
আরও বিস্তারিত জানার জন্য অঙ্কানের উত্তর দেখুন।
একই উত্তরের প্রসারণ
এটি তাত্ক্ষণিক সিদ্ধান্তের জন্য একটি কঠিন প্রতিষ্ঠানের টেবিলে!
xx
Type | A= worst case (x/3) | B = best case (x) | words estimate (A/4.5) - (B/4.5)
-----------+---------------------------------------------------------------------------
TINYTEXT | 85 | 255 | 18 - 56
TEXT | 21,845 | 65,535 | 4,854.44 - 14,563.33
MEDIUMTEXT | 5,592,415 | 16,777,215 | 1,242,758.8 - 3,728,270
LONGTEXT | 1,431,655,765 | 4,294,967,295 | 318,145,725.5 - 954,437,176.6
দয়া করে ক্রিস ভি এর উত্তরও দেখুন: https://stackoverflow.com/a/35785869/1881812
TINYTEXT
গন্য 1 বাইট + 8 থেকে রেকর্ড আকার বিরুদ্ধে বাইট, যেহেতু একটি VARCHAR(255)
1 বাইট + + 255 বাইট আপ থেকে 2 বাইট + + 1020 বাইট (4 বাইট হল UTF-8 টি অক্ষর) রেকর্ড আকার বিরুদ্ধে করা গন্য।
@ অঙ্কন-জেরোবের চ্যালেঞ্জের উত্থানে, এটি আমার সর্বাধিক দৈর্ঘ্যের অনুমান যা শব্দগুলিতে পরিমাপ করা প্রতিটি পাঠ্য টাইপের মধ্যে সংরক্ষণ করা যেতে পারে :
Type | Bytes | English words | Multi-byte words
-----------+---------------+---------------+-----------------
TINYTEXT | 255 | ±44 | ±23
TEXT | 65,535 | ±11,000 | ±5,900
MEDIUMTEXT | 16,777,215 | ±2,800,000 | ±1,500,000
LONGTEXT | 4,294,967,295 | ±740,000,000 | ±380,000,000
ইন ইংরেজি , শব্দ প্রতি 4.8 অক্ষর সম্ভবত একটি ভাল গড় (যেমন হয় norvig.com/mayzner.html ), যদিও শব্দ লেন্থ ডোমেইন অনুযায়ী পরিবর্তিত হতে হবে (যেমন কথ্য ভাষা বনাম একাডেমিক কাগজপত্র), তাই কোন বিন্দু খুব সুনির্দিষ্ট হচ্ছে। ইংরাজী বেশিরভাগ একক-বাইট ASCII অক্ষর, খুব মাঝে মাঝে বহু-বাইট অক্ষর সহ প্রতি-বর্ণের কাছে এক-বাইট-এর কাছাকাছি। আন্তঃ-শব্দের জায়গাগুলির জন্য একটি অতিরিক্ত চরিত্রের অনুমতি দেওয়া উচিত, তাই আমি প্রতি শব্দ 5.8 বাইট থেকে গোল করে এসেছি। প্রচুর উচ্চারণ সহ ভাষা যেমন পোলিশ বলতে কিছুটা কম শব্দ সঞ্চয় করে, যেমন দীর্ঘতর শব্দ সহ জার্মান would
গ্রীক, আরবি, হিব্রু, হিন্দি, থাই, ইত্যাদির মতো বহু-বাইটের অক্ষরের জন্য প্রয়োজনীয় ভাষার জন্য সাধারণত ইউটিএফ -8-তে প্রতিটি চরিত্রের জন্য দুটি বাইটের প্রয়োজন হয়। প্রতি শব্দ প্রতি 5 টি বর্ণের বুনিয়াদ অনুমান করে, আমি প্রতি শব্দ 11 বাইট থেকে নীচে পেয়েছি।
সিজেকে স্ক্রিপ্টস (হানজি, কঞ্জি, হীরাগানা, কাটাকানা ইত্যাদি) আমি এর কিছুই জানি না; আমি বিশ্বাস করি অক্ষরগুলির বেশিরভাগ ইউটিএফ -8 এ 3 বাইটের প্রয়োজন হয়, এবং (বিশাল সরলকরণের সাথে) তারা প্রতি শব্দে প্রায় 2 টি অক্ষর ব্যবহার করার জন্য বিবেচিত হতে পারে, তাই তারা অন্য দুটির মধ্যে কোথাও থাকবে। (সিজেকে স্ক্রিপ্টগুলির উপর নির্ভর করে ইউটিএফ -16 ব্যবহার করে কম স্টোরেজের প্রয়োজন হতে পারে)।
এটি অবশ্যই স্টোরেজ ওভারহেড ইত্যাদি উপেক্ষা করছে etc.