java - 타입 - 안드로이드 sqlite integer




Android 및 SQLite를 사용하여 데이터베이스에서 부울 가져 오기 (6)

SQLite에는 bool 데이터 유형이 없습니다. 그 효과를 얻으려면 0 또는 1로 고정하는 int를 사용하십시오. SQLite 3.0데이터 유형 참조참조 하십시오.

Android의 SQLite 데이터베이스에서 부울 필드 값을 얻으려면 어떻게해야합니까?

일반적으로 getString() , getInt() 등을 사용하여 필드 값을 가져 오지만 getBoolean() 메서드는없는 것 같습니다.


boolean b = (cursor.getInt (cursor.getColumnIndex ( "item"))! = 0);


다른 옵션

boolean value = (cursor.getString(column_index)).equals("1");

당신은 또한 사용할 수 있습니다

boolean value =cursor.getString(boolean_column_index).equals("True");

Ormlite Cursor 에서 발견 된 구현은 Null을 검사하여 다른 응답도 수행하지 않습니다.

   public boolean getBoolean(int columnIndex) {
        if (cursor.isNull(columnIndex) || cursor.getShort(columnIndex) == 0) {
            return false;
        } else {
            return true;
        }
    }

boolean 데이터 유형은 Cursor 에서 사용할 수 없습니다.

결과를 int 얻을 것이므로 int 값을 boolean 로 변환해야합니다.

사용할 수 있습니다.

boolean b = cursor.getInt(boolean_column_index) > 0;

또는

boolean b = (cursor.getInt(boolean_column_index) != 0);




boolean