2009-11-13 6 views
0

0/1은 유연 할 수 있으며 향후 "2, 3, 4"와 같은 옵션을 추가 할 수 있습니다.0/1 또는 True/False 부울을 사용해야합니까?

MySQL의 TINYINT은 부울보다 많은 공간을 차지합니까?

개인적으로 모든 항목에 대해 0과 1을 사용합니다.

정규 프로그래밍 (또는 MySQL 중 원하는대로)의 맥락에서이 질문에 대답 할 수 있습니다.

+0

컨텍스트는 MySQL입니까? –

+4

잠깐, 기본적으로 0/1이 부울로 작동하도록하려면 추가 옵션에는 어떤 것이있을 수 있습니까? FileNotFound? http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx – Brandon

답변

7

소금이 가치있는 데이터베이스 시스템이라면 부울을 데이터베이스에 적합한 것으로 변환하고 실제 부울 유형을 사용하면 프로그래밍을 훨씬 더 멋지게 만들 수 있습니다.

1

부울은 다른 데이터베이스 (예 : PostgreSQL)에 더 이식 가능합니다. Tinyint는 더 유연하며 열거 형으로 업그레이드 할 수 있습니다.

마지막 선택은 귀하가해야합니다. 하지만 SQL을 제외하고 어디에서나 명시적인 부울 리언/열거 형을 "매직 넘버"이상으로 명료하고 유형 안전성을 위해 권장합니다.

1

값에 참/거짓이 필요하다는 것을 절대적으로 확신 할 때 코드에 부울 유형을 사용합니다. 0은 성공을위한 리턴 코드로 작동 할 수 있고 다른 모든 양수 또는 음수는 다양한 오류 조건을 정의 할 수 있기 때문에 종종 0/1로 시작하는 것이 편리합니다.

0

언어에 상관없이 참/거짓 결정을 내리면 언어가 부울을 지원하는 경우이를 사용하십시오.

"추가 숫자"를 지원하기 위해 0/1을 사용하면 아마도 해당 필드가 의사 결정이 아니며 여러 가지 선택이 될 수 있습니다.

관련 문제