반응형
여러 분야가있는 웹 사이트에 양식이 있습니다. 일부 필드는 선택 사항이고 일부는 필수입니다. 내 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 |
댓글