'' 정체가 궁금합니다... 0 2 1,104

by 기그스 [2015.02.11 17:56:47]


안녕하세요.

스터디중 null 에대해 이야기를 하다가

현업의 경험중 홀따움표 띄움없이 '' 인경우 데이터가 나올때가 있다

라는 의문에서 시작했습니다.

스페이스도 넣어보고 null 도 비교해보고 했지만

역시나 만족하지 않더군요.

컬럼 = ''

홀따움표 '' 무엇인지 궁금합니다.

어떻해 데이터가 쌓였을때 조회가 된건지...

감사합니다.

by 마농 [2015.02.11 18:11:56]

1. 통상적으로 봤을 때
  - '' 과 Null 은 다릅니다.
  - '' 은 빈 문자를 의미하며
  - Null 은 정해지지 않은 값. 할당되지 않은 값. 을 의미합니다.
2. 그러나 Oracle 에서는 좀 다릅니다.
  - 오라클에서의 '' 은 Null 처럼 인지됩니다.
  - MSSQL 이나 MySQL 에서는 '' 과 Null 이 구별됩니다.


by 아발란체 [2015.02.11 18:12:42]

문자열을 넣을 때 DB에서는 "" 가 아닌 ''로 좌우 감싸서 데이타를 넣습니다.

PHP나 일부 언어에서 데이타를 수정하거나 입력 할 때

stmt.executeQuery("INSERT INTO TABLE_NANE(...) VALUES('" + contents + "', SYSDATE)");

식으로 기술을 한다면

여기서 변수 값이 "안녕하세요, 나의 이름은 '홍길동입니다" 식으로 값 안에 '개 1나 있어서 프로그램 코딩 영역 값과 연장선으로 인식하여 오류가 나는 경우가 있습니다.

그래서 PHP 경우 데이타 값에 '나 "에 대해 입력이 문제가 없도록 변환해주는 함수를 지원합니다.

자바 경우 J2EE 프로젝트라면 DAO(Database Access Object) 프레임워크 단에서 알아서 변환을 해줍니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입