Room(3)
-
Jetpack Compose - Room, DataStore Practice
https://github.com/SeongHyunJeon/android-kotlin-practice/tree/b127e7b047e34e1373e4a144b2cb3470915ac2af/FlightSearch Flow.collect() - 값이 변경될 때마다 수집하고 방출한다. Flow.single() - 가장 첫 번째 값을 수집하고 방출하지만, 비어 있거나 두 개 이상의 값을 수집하면 예외를 발생시킨다. Flow.first() - 가장 첫 번째 값만 수집하고 방출하는데 이후의 값은 무시하고 비어 있는 경우 예외를 발생시킨다. 위의 프로그램에선 DataStore를 사용하여 텍스트 필드의 값을 저장하고 프로그램이 시작할 때 초기화 함수로 단 한번만 수집하여 출력하면 되기 때문에 Flow.first()를 사용..
2024.03.29 -
Jetpack Compose - Room Practice
https://github.com/SeongHyunJeon/android-kotlin-practice/tree/bf5a22726ebd1d3532dc47b8681d05e49fd22b6f/BusSchedule 기존의 파일을(*.db) 데이터베이스 객체에 적용하여 생성하는 방법. fun getDatabase(context: Context): BusScheduleDatabase { return Instance ?: synchronized(this) { Room.databaseBuilder(context, BusScheduleDatabase::class.java, "bus_schedule") .createFromAsset("database/bus_schedule.db") .fallbackToDestructiveM..
2024.03.19 -
Jetpack Compose - Room
https://github.com/SeongHyunJeon/android-kotlin-practice/tree/55d7150808ee8865620aa189a7857daf3e76b29e/Inventory SQLite - 관계형 데이터 베이스로 C언어로 작성되어 빠르고 효율적으로 동작한다. 구조화된 쿼리 언어(SQL)를 사용하여 데이터를 조작할 수 있다. 관계형 데이터 베이스 - 테이블을 여러 개 포함하고 테이블 간의 관계를 정의하는 데이터 베이스를 의미한다. 모든 테이블 행에는 기본키라는 고유 식별자가 포함되고, 만약 다른 테이블의 기본 키를 참조한다면 이는 외래키라 부른다. 추가로 데이터 베이스의 테이블 이름은 단수형으로 짓는 것이 좋다. 데이터 베이스 용어 테이블 : Student, Professor같..
2024.03.19