Hướng dẫn varchar max mysql
Độ dài tối đa của một varchar tùy thuộc vào kích thước hàng tối đa trong MySQL, là 64KB (không tính BLOB):
Tuy nhiên, lưu ý rằng giới hạn thấp hơn nếu bạn sử dụng bộ ký tự nhiều byte:
Dưới đây là một số ví dụ: Kích thước hàng tối đa là 65535, nhưng một varchar cũng bao gồm một hoặc hai byte để mã hóa độ dài của một chuỗi đã cho. Vì vậy, bạn thực sự không thể khai báo một biến thể của kích thước hàng tối đa, ngay cả khi đó là cột duy nhất trong bảng.
Nhưng nếu chúng ta thử giảm độ dài, chúng ta sẽ tìm thấy độ dài lớn nhất hoạt động:
Bây giờ nếu chúng ta cố gắng sử dụng bộ ký tự đa bào ở cấp bảng, chúng ta thấy rằng nó tính mỗi ký tự là nhiều byte. Các chuỗi UTF8 không nhất thiết phải sử dụng nhiều byte cho mỗi chuỗi, nhưng MySQL không thể cho rằng bạn sẽ hạn chế tất cả các lần chèn trong tương lai của mình thành các ký tự một byte.
Mặc dù lỗi cuối cùng đã nói với chúng tôi, InnoDB vẫn không giống như chiều dài 21845.
Điều này có ý nghĩa hoàn hảo, nếu bạn tính toán rằng 21845 * 3 = 65535, dù sao thì nó cũng không hoạt động. Trong khi đó 21844 * 3 = 65532, không hoạt động.
173 hữu ích 5 bình luận chia sẻ |