Skip to content

String Termination — ทำไม VARCHAR ถึงมี

String ใน C ไม่รู้ความยาวตัวเอง — มันรู้แค่ว่า “จบที่ \0” นี่คือปัญหาพื้นฐานที่ทำให้ SQL ต้องสร้าง VARCHAR ขึ้นมา

Sheets จัดการให้หมด:

=LEN("HI") → 2
=LEN("HELLO") → 5

คุณไม่ต้องคิดเรื่อง byte, null terminator หรือ allocation เลย

คำถามCSQLPython
string จบที่ไหน?\0 null terminatorlength field (VARCHAR) หรือ padding (CHAR)length attribute
ขนาดจริง?sizeofstorage engine จัดการsys.getsizeof
ความยาวข้อความ?strlen (นับถึง \0)LENGTH() / CHAR_LENGTH()len()