มีข้อเสียในการใช้ varchar (255) ทั่วไปสำหรับฟิลด์ที่เป็นข้อความทั้งหมดหรือไม่?
ฉันมีcontactsตารางที่มีสาขาต่าง ๆ เช่นpostcode, first name, last name, town, country, phone numberฯลฯ ซึ่งทั้งหมดนี้จะถูกกำหนดเป็นVARCHAR(255)แม้ว่าจะไม่มีข้อมูลเหล่านี้จะเคยมาใกล้เคียงกับที่มี 255 ตัวอักษร (หากคุณสงสัยก็เป็นเช่นนี้เพราะการย้ายข้อมูล Ruby on Rails จะจับคู่ฟิลด์ String เป็นVARCHAR(255)ค่าเริ่มต้นและฉันไม่เคยใส่ใจที่จะแทนที่มัน) เนื่องจาก VARCHAR จะจัดเก็บเฉพาะจำนวนอักขระจริงของฟิลด์ (พร้อมกับความยาวฟิลด์) มีข้อได้เปรียบที่แตกต่าง (ประสิทธิภาพหรืออย่างอื่น) ในการใช้พูดVARCHAR(16)ทับVARCHAR(255)หรือไม่? นอกจากนี้ฟิลด์เหล่านี้ส่วนใหญ่มีดัชนีอยู่ด้วย ขนาด VARCHAR ที่ใหญ่ขึ้นบนสนามมีผลต่อขนาดหรือประสิทธิภาพของดัชนีหรือไม่? ฉันใช้ MySQL 5