반응형
여러 분야가있는 웹 사이트에 양식이 있습니다. 일부 필드는 선택 사항이고 일부는 필수입니다. 내 DB에는 이러한 모든 값을 보유하는 테이블이 있습니다. 사용자가 데이터를 입력하지 않은 DB 열에 NULL 값이나 빈 문자열을 삽입하는 것이 더 나은 방법입니까?
해결 방법
NULL
을 사용하면 "데이터 입력 안 함"과 "빈 데이터 입력"을 구분할 수 있습니다.
더 많은 차이점 :
NULL
의 LENGTH
는 NULL
이고 빈 문자열의 LENGTH
는 0
입니다. .
NULL
은 빈 문자열보다 먼저 정렬됩니다.
COUNT (message)
는 빈 문자열을 계산하지만 NULL
은 계산하지 않습니다
바인딩 된 변수를 사용하여 빈 문자열을 검색 할 수 있지만 NULL
은 검색 할 수 없습니다. 이 쿼리 :
SELECT *
FROM mytable
WHERE mytext = ?
클라이언트에서 전달하는 값에 관계없이 mytext
의 NULL
과 일치하지 않습니다. NULL
을 일치 시키려면 다른 쿼리를 사용해야합니다.
SELECT *
FROM mytable
WHERE mytext IS NULL
참조 페이지 https://stackoverflow.com/questions/1267999
반응형
'MySql' 카테고리의 다른 글
MySQL 테이블에서 모든 행을 삭제하고 ID를 0으로 재설정 (0) | 2021.01.26 |
---|---|
MySQL은 오늘과 같은 날짜 선택 (0) | 2021.01.26 |
MySQL InnoDB가 테이블에서 데이터 행을 삭제 한 후 디스크 공간을 해제하지 않음 (0) | 2021.01.26 |
MySQL의 테이블 필드에 인덱스가 있는지 어떻게 확인합니까? (0) | 2021.01.26 |
MySQL JDBC PreparedStatement에 매개 변수 전달 (0) | 2021.01.26 |
댓글