Tôi thấy liên kết này hữu ích.
Đây là đoạn nêu bật một số ưu / nhược điểm của mỗi cách tiếp cận.
Thiết kế thường thấy nhất là bắt chước nhiều thẻ giống Boolean mà chế độ xem từ điển dữ liệu của Oracle sử dụng, chọn 'Y' cho truea và 'N' cho sai. Tuy nhiên, để tương tác chính xác với các môi trường máy chủ, chẳng hạn như JDBC, OCCI và các môi trường lập trình khác, tốt hơn nên chọn 0 cho false và 1 cho true để nó có thể hoạt động chính xác với các hàm getBoolean và setBoolean.
Về cơ bản, họ ủng hộ phương pháp số 2, vì lợi ích của hiệu quả, sử dụng
- giá trị 0/1 (do khả năng tương tác với
getBoolean()
của JDBC v.v.) với một ràng buộc kiểm tra - a loại của CHAR (vì nó sử dụng ít dung lượng hơn NUMBER).
Ví dụ của họ:
create table tbool (bool char check (bool in (0,1)); insert into tbool values(0); insert into tbool values(1);`