DB 생성후 테이블을 생성했습니다.

  String sql = "create table " + TABLE_NAME + " ("
    + "myKey String not null, " + "myValue String not null);";

이후

insert 를 하려고 합니다.

    String sql = "insert into " + TABLE_NAME + " (myKey, myValue) "
      + " values('" + myKey + "'" + ", '" + myValue + "');";

이런식으로요...


여기서 문제가 생기더군요...

String 이 들어갈거라도 당연히 생각하고... myKey 혹은 myValue 에 "010" 을 입력하고

select 문으로 꺼내보니... "10" 만 저장이 되어있더군요...(일반 문자열을 저장 잘 되는데..숫자 0 으로 시작되는 문자열은 0이 빠집니다.)

이유를 잘 모르겠습니다.

String 이란 자료형이 있는것 같기는 한데....




해결책은

  String sql = "create table " + TABLE_NAME + " ("
    + "myKey TEXT not null, " + "myValue TEXT not null);";

으로 했더니..

"010" 이 제대로 "010"으로 저장되더군요..


왜 이런 현상이 발생하는거죠??

sqlite3 만의 특성인가요?