[Kotlin] "ContentValues"에 Null값 입력 방법 (putNull)
SQLite에서 데이터 입력시에 ContentValues가 필요합니다.
val dbHelper:DBHelper = DBHelper(context, "DB명", null, 1)
val database:SQLiteDatabase = dbHelper.writableDatabase
val contentValues = ContentValues()
contentValues.put("title", "[Kotlin] ContentValues putNull")
contentValues.put("contents", "글 메모입니다.")
database.insert("테이블명", null, contentValues)
위는 기본적으로 테이블에 insert하는 로직입니다.
이를 수행하면, title / memo가 "테이블명"이라는 테이블에 입력되게 됩니다.
결과는 아래와 같습니다.
title | contents |
[Kotlin] To enter a null value for "ContentValues" (putNull) | 글 메모입니다. |
그런데 만약 제목은 있고 내용은 아직 입력하지 않는 임시저장인 경우 어떻게 해야할까요?
val dbHelper:DBHelper = DBHelper(context, "DB명", null, 1)
val database:SQLiteDatabase = dbHelper.writableDatabase
val contentValues = ContentValues()
contentValues.put("title", "내용은 나중에 입력할게요")
contentValues.put("contents", null)
database.insert("테이블명", null, contentValues)
위와 같이 입력한다면 아래와 같은 contents를 입력 하는 부분에서 오류가 발생합니다.
put으로는 null을 입력할 수 없고, putNull을 이용해주어야 합니다.
위와 같이 putNull("contents")를 해주면, contents에는 null값이 입력되게 됩니다. 하지만 주의해야할 사항은 입력하는 테이블에 contents 컬럼이 null을 허용하는 컬럼인지 반드시 체크해야합니다.
※ 이 글은 워드프레스에 작성한 글과 동일한 작성자의 동일한 글입니다.
https://royfactory.net/2023/07/02/kotlin-contentvalues-putnull/
[Kotlin] To enter a null value for “ContentValues” (putNull) - ROY FACTORY
SQLite에서 데이터 입력시에 ContentValues가 필요합니다. val dbHelper:DBHelper = DBHelper(context, "DB명", null, 1) val database:SQLiteDatabase = dbHelper.writableDatabase val contentValues = ContentValues() contentValues.put("title", "[Kotli
royfactory.net