ในหลายหลักสูตรหนังสือและงานฉันได้เห็นเขตข้อมูลข้อความที่กำหนดเป็น VARCHAR (255) เป็นค่าเริ่มต้นสำหรับข้อความ "shortish" มีเหตุผลที่ดีหรือไม่ที่มีการเลือกความยาว 255 บ่อยครั้งนอกเหนือจากการเป็นจำนวนรอบที่ดี ? มันเป็นสิ่งที่ค้างไว้บางครั้งในอดีตเมื่อมีเหตุผลที่ดี (ไม่ว่าวันนี้จะมีผลหรือไม่)?
แน่นอนฉันรู้ว่าขีด จำกัด ที่แน่นกว่าจะเหมาะกว่าถ้าคุณรู้ว่าความยาวสูงสุดของสตริง แต่ถ้าคุณใช้ VARCHAR (255) ซึ่งอาจบ่งบอกว่าคุณไม่ทราบความยาวสูงสุดเฉพาะว่าเป็นสตริง "shortish"
หมายเหตุ: ฉันพบคำถามนี้ ( varchar (255) v tinyblob v tinytext ) ซึ่งบอกว่า VARCHAR ( n ) ต้องการหน่วยเก็บข้อมูล +1 nไบต์สำหรับn <= 255, n +2 ไบต์ของที่เก็บสำหรับn > 255 นี่เป็นเหตุผลเดียวหรือไม่ ดูเหมือนจะเป็นเรื่องที่ไม่มีกฎเกณฑ์เนื่องจากคุณจะประหยัดเพียงสองไบต์เมื่อเปรียบเทียบกับ VARCHAR (256) และคุณสามารถบันทึกอีกสองไบต์ได้อย่างง่ายดายโดยการประกาศ VARCHAR (253)