오래된 프로그래머의 요즘 이야기

그리고 소소한 일상들...

허니의 소소한 일상들이 켜켜이 쌓여가고......

데이터베이스 2

[Flutter / SQLiTE]SQLiTE의 장단점 및 Flutter와 함께 사용 시 주의사항

SQLite란 무엇인가?SQLite는 별도의 서버 프로세스 없이 작동하는 서버리스(Serverless), 자기 완결형(Self-Contained), 트랜잭션 안전(Transactional) SQL 데이터베이스 엔진입니다. SQLite 데이터베이스는 하나의 파일로 구성되어 관리가 용이하며, 임베디드 시스템, 모바일 애플리케이션, 소규모 데스크톱 애플리케이션 등 다양한 환경에서 널리 사용됩니다.SQLite의 역사SQLite는 2000년에 D. Richard Hipp에 의해 개발되었습니다. 원래는 미 해군의 함선에 탑재될 소프트웨어에 사용하기 위해 개발되었으며, 상업적 및 개인적 용도로 자유롭게 사용할 수 있는 퍼블릭 도메인 소프트웨어입니다. 시간이 지나면서 SQLite는 단순함, 이식성, 안정성 덕분에 많은..

Tech Story 2025.06.01

[ SQL ] Query 작성 시 count() 함수의 함정

많은 개발자들이 Database Query 작성할때 습관적으로 ... count(*) ... 이렇게 사용하는 사람들이 많다. 대개의 경우 큰 문제가 생기지는 않으나, 혹 실행 결과값이 다를 수 있음을 인지하고 사용하는 개발자는 그리 많지 않은 듯 하다. 바로 Field의 값이 Null 이냐 아니냐에 따라 리턴되는 count() 함수의 결과값이 달라질 수 있다. 예제를 보자 예제에서 사용한 테이블 t1 은 간단하게 Nullable 속성의 2개 필드를 가지고 있고, PrimaryKey 설정도 하지 않았으며, 테스트를 위한 Record 6개를 넣은 후 전체 조회한 결과는 우측 이미지와 같다. 다음과 같이 3개의 쿼리를 던져보면 받는 결과값이 다름을 알 수 있으며, 필자가 얘기하려는 바가 무엇인지 바로 알 수 ..

Tech Story 2023.12.06