Vì MySQL dường như không có bất kỳ loại dữ liệu 'boolean' nào, loại dữ liệu nào bạn 'lạm dụng' để lưu trữ thông tin đúng / sai trong MySQL?
Đặc biệt là trong bối cảnh viết và đọc từ / đến một tập lệnh PHP.
Theo thời gian tôi đã sử dụng và thấy một số cách tiếp cận:
- Các trường nhỏ, varchar chứa các giá trị 0/1,
- các trường varchar chứa các chuỗi '0' / '1' hoặc 'true' / 'false'
- và cuối cùng là enum Các trường chứa hai tùy chọn 'true' / 'false'.
Không có điều nào ở trên có vẻ tối ưu. Tôi có xu hướng thích biến thể tinyint 0/1 hơn, vì chuyển đổi loại tự động trong PHP mang lại cho tôi các giá trị boolean khá đơn giản.
Vậy bạn sử dụng loại dữ liệu nào? Có một loại được thiết kế cho các giá trị boolean mà tôi đã bỏ qua? Bạn có thấy bất kỳ lợi thế / bất lợi bằng cách sử dụng loại này hay loại khác?
bit(1)
'sa bit ** để nhập trong Excel. Chuyển sang tinyint(1)
làm việc.