반응형

SQLite 8

[SQLite] How to get the last inserted ID

0. 미리보기 1. 테이블 생성 2. 임시 데이터 추가 3. 마지막 입력된 SEQ 가져오기 0. 미리보기 SELECT LAST_INSERT_ROWID(); TRANSACTION 처리를 위해 ID에 의미를 부여하지 않는 경우에는 Sequence를 ID로서의 역할인 중복방지가 가능합니다. 만약 아래와 같은 메모를 관리하기 위한 MEMO 테이블이 있다고 가정하고 SEQ가 해당 테이블의 PK인 경우 SEQTITLECONTENT SEQ TITLE CONTENT 1 로이팩토리 블로그 작성중입니다. 2 워드프레스 블로그 이용중입니다. 1. 테이블 생성 CREATE TABLE MEMO ( SEQ INTEGER PRIMARY KEY AUTOINCREMENT , TITLE TEXT , CONTENT TEXT ) SEQ :..

[SQLite] How to Look Up the Date Interval (Date Diff)

How to Look Up the Date Interval (Date Diff) 1. 테이블 생성 2. 테스트 데이터 추가 3. 율리우스일 (JULIANDAY) 4. DATEDIFF 5. STRFTIME How to Look Up the Date Interval (Date Diff) 만약 아래와 같은 테이블이 있다고 가정하면, TITLE DATE_ST DATE_ED CASE #1 2023-07-01 09:00:00.000 2023-07-02 10:10:10.000 CASE #2 2023-06-01 09:00:00.000 2023-07-02 10:10:10.000 CASE #3 2022-07-01 09:00:00.000 2023-07-02 10:10:10.000 CASE #1 : 시작 일자와 종료 일자가 ..

[Kotlin] How To enter a null value for "ContentValues" (putNull)

SQLite에서 데이터 입력 시에 ContentValues가 필요합니다. val dbHelper:DBHelper = DBHelper(context, "DB명", null, 1) val database:SQLiteDatabase = dbHelper.writableDatabase val contentValues = ContentValues() contentValues.put("title", "ContentValues putNull") contentValues.put("contents", "글 메모입니다.") database.insert("테이블명", null, contentValues) 위는 기본적으로 테이블에 insert하는 로직입니다. 이를 수행하면, title / memo가 "테이블명"이라는 테이블에 ..

[Kotlin] How to Use "IN" Clause in SQLite

1. 기본 방법 2. 문자열 기준 방법 1. 기본 방법 SQLite에서는 이를 활용해서 IN절의 조건을 넣을 수 있습니다. 만약 아래와 같은 상품 코드 기준의 상품을 삭제하는 Query를 실행해야 한다면 DELETE FROM PRODUCT WHERE PRDT_CODE IN (1, 2, 3, 4, 5) // 삭제할 상품 코드 목록 val params = arrayListOf(1, 2, 3, 4, 5) // SQLite Helper val dbHelper:DBHelper = DBHelper(context, "데이터베이스명", null, 1) // 쓰기 데이터베이스 val database = dbHelper.writableDatabase // 삭제 실행 val tableName = "PRODUCT" datab..

[Kotlin] How to sort arrays in order

How to sort arrays in order 1. 객체 생성 2. 테스트 데이터 생성 3. 현재 데이터 출력 4. 오름차순 정렬 (Ascending) 5. 내림차순 (Descending) How to sort arrays in order 객체에 담긴 목록의 경우 정렬이 필요한 경우가 많습니다. 이 경우, 아래와 같이 오름차순과 내림차순으로 정렬 가능합니다. 메서드 내용 sortBy 특정항목 기준으로 내림차순 정렬합니다. sortByDescending 특정항목 기준으로 오름차순 정렬합니다. 1. 객체 생성 data class Product ( val name : String, val price : Int ) 상품명과 가격 정보를 갖는 데이터 모델 객체를 생성합니다. 2. 테스트 데이터 생성 val a..

[SQLite] 마지막으로 입력 된 ID 가져오는 방법

0. 미리보기 SELECT LAST_INSERT_ROWID(); TRANSACTION 처리를 위해 ID에 의미를 부여하지 않는 경우에는 Sequence를 ID로서의 역할인 중복방지가 가능합니다. 만약 아래와 같은 메모를 관리하기 위한 MEMO 테이블이 있다고 가정하고 SEQ가 해당 테이블의 PK인 경우 SEQ TITLE CONTENT 1 로이팩토리 블로그 작성중입니다. 2 워드프레스 블로그 이용중입니다. 1. 테이블 생성 CREATE TABLE MEMO ( SEQ INTEGER PRIMARY KEY AUTOINCREMENT , TITLE TEXT , CONTENT TEXT ) SEQ : 메모 일련번호 (1, 2, 3, 순으로 자동 증가) TITLE : 메모 제목 CONTENT : 메모 내용 2. 임시 데..

[Kotiln] SQLite "IN"절 사용하는 방법

이전에 joinToString에 대해 글을 쓴 적이 있습니다 2023.07.23 - [개발 창고/안드로이드 개발] - [Kotlin] String 배열을 한 개의 String으로 만드는 방법 [Kotlin] String 배열을 한 개의 String으로 만드는 방법 1. 기본 문법 문자열 또는 숫자형 배열을 사용하다 보면 join을 해야 하는 경우가 많습니다. fun Sequence.joinToString( separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, trunc royzero.tistory.com 1. 기본 방법 SQLite에서는 이를 활용해서 IN절의 조건을 넣을 ..

[SQLite] Date Diff를 구하는 방법

How to look up the Date Interval 만약 아래와 같은 테이블이 있다고 가정하면, TITLE DATE_ST DATE_ED CASE #1 2023-07-01 09:00:00.000 2023-07-02 10:10:10.000 CASE #2 2023-06-01 09:00:00.000 2023-07-02 10:10:10.000 CASE #3 2022-07-01 09:00:00.000 2023-07-02 10:10:10.000 CASE #1 : 시작 일자와 종료 일자가 1일 1시간 10분 10초 차이 CASE #2 : 시작 일자와 종료 일자가 1개월 1일 1시간 10분 10초 차이 CASE #3 : 시작 일자와 종료 일자가 1년 1일 1시간 10분 10초 차이 1. 테이블 생성 CREATE ..

반응형